linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ben Hutchings <ben@decadent.org.uk>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: akpm@linux-foundation.org, Denis Kirjanov <kda@linux-powerpc.org>,
	"Yufen Yu" <yuyufen@huawei.com>,
	"Bart Van Assche" <bvanassche@acm.org>,
	"Martin K. Petersen" <martin.petersen@oracle.com>
Subject: [PATCH 3.16 076/136] scsi: core: try to get module before removing device
Date: Tue, 17 Dec 2019 00:46:50 +0000	[thread overview]
Message-ID: <lsq.1576543535.245209603@decadent.org.uk> (raw)
In-Reply-To: <lsq.1576543534.33060804@decadent.org.uk>

3.16.80-rc1 review patch.  If anyone has any objections, please let me know.

------------------

From: Yufen Yu <yuyufen@huawei.com>

commit 77c301287ebae86cc71d03eb3806f271cb14da79 upstream.

We have a test case like block/001 in blktests, which will create a scsi
device by loading scsi_debug module and then try to delete the device by
sysfs interface. At the same time, it may remove the scsi_debug module.

And getting a invalid paging request BUG_ON as following:

[   34.625854] BUG: unable to handle page fault for address: ffffffffa0016bb8
[   34.629189] Oops: 0000 [#1] SMP PTI
[   34.629618] CPU: 1 PID: 450 Comm: bash Tainted: G        W         5.4.0-rc3+ #473
[   34.632524] RIP: 0010:scsi_proc_hostdir_rm+0x5/0xa0
[   34.643555] CR2: ffffffffa0016bb8 CR3: 000000012cd88000 CR4: 00000000000006e0
[   34.644545] Call Trace:
[   34.644907]  scsi_host_dev_release+0x6b/0x1f0
[   34.645511]  device_release+0x74/0x110
[   34.646046]  kobject_put+0x116/0x390
[   34.646559]  put_device+0x17/0x30
[   34.647041]  scsi_target_dev_release+0x2b/0x40
[   34.647652]  device_release+0x74/0x110
[   34.648186]  kobject_put+0x116/0x390
[   34.648691]  put_device+0x17/0x30
[   34.649157]  scsi_device_dev_release_usercontext+0x2e8/0x360
[   34.649953]  execute_in_process_context+0x29/0x80
[   34.650603]  scsi_device_dev_release+0x20/0x30
[   34.651221]  device_release+0x74/0x110
[   34.651732]  kobject_put+0x116/0x390
[   34.652230]  sysfs_unbreak_active_protection+0x3f/0x50
[   34.652935]  sdev_store_delete.cold.4+0x71/0x8f
[   34.653579]  dev_attr_store+0x1b/0x40
[   34.654103]  sysfs_kf_write+0x3d/0x60
[   34.654603]  kernfs_fop_write+0x174/0x250
[   34.655165]  __vfs_write+0x1f/0x60
[   34.655639]  vfs_write+0xc7/0x280
[   34.656117]  ksys_write+0x6d/0x140
[   34.656591]  __x64_sys_write+0x1e/0x30
[   34.657114]  do_syscall_64+0xb1/0x400
[   34.657627]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[   34.658335] RIP: 0033:0x7f156f337130

During deleting scsi target, the scsi_debug module have been removed. Then,
sdebug_driver_template belonged to the module cannot be accessd, resulting
in scsi_proc_hostdir_rm() BUG_ON.

To fix the bug, we add scsi_device_get() in sdev_store_delete() to try to
increase refcount of module, avoiding the module been removed.

Link: https://lore.kernel.org/r/20191015130556.18061-1-yuyufen@huawei.com
Signed-off-by: Yufen Yu <yuyufen@huawei.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
 drivers/scsi/scsi_sysfs.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

--- a/drivers/scsi/scsi_sysfs.c
+++ b/drivers/scsi/scsi_sysfs.c
@@ -652,6 +652,14 @@ sdev_store_delete(struct device *dev, st
 		  const char *buf, size_t count)
 {
 	struct kernfs_node *kn;
+	struct scsi_device *sdev = to_scsi_device(dev);
+
+	/*
+	 * We need to try to get module, avoiding the module been removed
+	 * during delete.
+	 */
+	if (scsi_device_get(sdev))
+		return -ENODEV;
 
 	kn = sysfs_break_active_protection(&dev->kobj, &attr->attr);
 	WARN_ON_ONCE(!kn);
@@ -666,9 +674,10 @@ sdev_store_delete(struct device *dev, st
 	 * state into SDEV_DEL.
 	 */
 	device_remove_file(dev, attr);
-	scsi_remove_device(to_scsi_device(dev));
+	scsi_remove_device(sdev);
 	if (kn)
 		sysfs_unbreak_active_protection(kn);
+	scsi_device_put(sdev);
 	return count;
 };
 static DEVICE_ATTR(delete, S_IWUSR, NULL, sdev_store_delete);


  parent reply	other threads:[~2019-12-17  0:55 UTC|newest]

Thread overview: 140+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-17  0:45 [PATCH 3.16 000/136] 3.16.80-rc1 review Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 001/136] hrtimer: Store cpu-number in struct hrtimer_cpu_base Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 002/136] tick: broadcast-hrtimer: Remove overly clever return value abuse Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 003/136] tick: hrtimer-broadcast: Prevent endless restarting when broadcast device is unused Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 004/136] tick: broadcast-hrtimer: Fix a race in bc_set_next Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 005/136] sch_cbq: validate TCA_CBQ_WRROPT to avoid crash Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 006/136] scsi: sd: Ignore a failure to sync cache due to lack of authorization Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 007/136] staging: rtl8188eu: fix HighestRate check in odm_ARFBRefresh_8188E() Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 008/136] HID: fix error message in hid_open_report() Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 009/136] RDMA/iwcm: Fix a lock inversion issue Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 010/136] net: stmmac: Correctly take timestamp for PTPv2 Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 011/136] hso: fix NULL-deref on tty open Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 012/136] USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 013/136] drm/omap: fix max fclk divider for omap36xx Ben Hutchings
2019-12-23 14:00   ` Adam Ford
2019-12-17  0:45 ` [PATCH 3.16 014/136] ipv6: drop incoming packets having a v4mapped source address Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 015/136] scsi: zfcp: fix reaction on bit error threshold notification Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 016/136] USB: rio500: Remove Rio 500 kernel driver Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 017/136] USB: serial: keyspan: fix NULL-derefs on open() and write() Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 018/136] USB: microtek: fix info-leak at probe Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 019/136] USB: adutux: fix NULL-derefs on disconnect Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 020/136] USB: yurex: Don't retry on unexpected errors Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 021/136] USB: dummy-hcd: fix power budget for SuperSpeed mode Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 022/136] USB: usblcd: fix I/O after disconnect Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 023/136] mac80211: Reject malformed SSID elements Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 024/136] USB: legousbtower: fix slab info leak at probe Ben Hutchings
2019-12-17  0:45 ` [PATCH 3.16 025/136] USB: legousbtower: fix deadlock on disconnect Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 026/136] USB: legousbtower: fix potential NULL-deref " Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 027/136] USB: legousbtower: fix open after failed reset request Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 028/136] xhci: Prevent device initiated U1/U2 link pm if exit latency is too long Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 029/136] xhci: Check all endpoints for LPM timeout Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 030/136] usb: xhci: wait for CNR controller not ready bit in xhci resume Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 031/136] usb: renesas_usbhs: gadget: Do not discard queues in usb_ep_set_{halt,wedge}() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 032/136] usb: renesas_usbhs: gadget: Fix usb_ep_set_{halt,wedge}() behavior Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 033/136] USB: usb-skeleton: fix runtime PM after driver unbind Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 034/136] USB: usblp: " Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 035/136] USB: serial: " Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 036/136] media: stkwebcam: " Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 037/136] serial: uartlite: fix exit path null pointer Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 038/136] net: ipv4: use a dedicated counter for icmp_v4 redirect packets Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 039/136] net: ipv4: avoid mixed n_redirects and rate_tokens usage Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 040/136] sch_dsmark: fix potential NULL deref in dsmark_init() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 041/136] nfc: fix memory leak in llcp_sock_bind() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 042/136] CIFS: Gracefully handle QueryInfo errors during open Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 043/136] panic: ensure preemption is disabled during panic() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 044/136] llc: fix sk_buff leak in llc_sap_state_process() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 045/136] Fix to check Unique id and FileType when client refer file directly Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 046/136] cifs: Check uniqueid for SMB2+ and return -ESTALE if necessary Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 047/136] CIFS: Force revalidate inode when dentry is stale Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 048/136] CIFS: Force reval dentry if LOOKUP_REVAL flag is set Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 049/136] memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()' Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 050/136] sched/fair: Scale bandwidth quota and period without losing quota/period ratio precision Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 051/136] ARM: mm: fix alignment handler faults under memory pressure Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 052/136] USB: usb-skeleton: fix NULL-deref on disconnect Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 053/136] USB: legousbtower: fix use-after-free on release Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 054/136] USB: ldusb: fix NULL-derefs on driver unbind Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 055/136] USB: adutux: fix use-after-free on release Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 056/136] USB: iowarrior: " Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 057/136] USB: iowarrior: fix use-after-free after driver unbind Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 058/136] USB: yurex: fix NULL-derefs on disconnect Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 059/136] tracing: Get trace_array reference for available_tracers files Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 060/136] batman-adv: iv_ogm_iface_enable, direct return values Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 061/136] batman-adv: Avoid free/alloc race when handling OGM buffer Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 062/136] parisc: Fix vmap memory leak in ioremap()/iounmap() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 063/136] mm/slub: fix a deadlock in show_slab_objects() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 064/136] xtensa: drop EXPORT_SYMBOL for outs*/ins* Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 065/136] ceph: just skip unrecognized info in ceph_reply_info_extra Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 066/136] USB: ldusb: fix memleak on disconnect Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 067/136] USB: legousbtower: " Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 068/136] USB: legousbtower: fix a signedness bug in tower_probe() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 069/136] usb: udc: lpc32xx: fix bad bit shift operation Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 070/136] USB: usblp: fix use-after-free on disconnect Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 071/136] PCI: PM: Fix pci_power_up() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 072/136] net: avoid potential infinite loop in tc_ctl_action() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 073/136] net: bcmgenet: Fix RGMII_MODE_EN value for GENET v1/2/3 Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 074/136] USB: serial: ti_usb_3410_5052: fix port-close races Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 075/136] Btrfs: check for the full sync flag while holding the inode lock during fsync Ben Hutchings
2019-12-17  0:46 ` Ben Hutchings [this message]
2019-12-17  0:46 ` [PATCH 3.16 077/136] net: phy: bcm7xxx: define soft_reset for 40nm EPHY Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 078/136] net: bcmgenet: reset 40nm EPHY on energy detect Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 079/136] USB: ldusb: fix read info leaks Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 080/136] xen/netback: fix error path of xenvif_connect_data() Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 081/136] net: netem: correct the parent's backlog when corrupted packet was dropped Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 082/136] CIFS: avoid using MID 0xFFFF Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 083/136] ARC: perf: Accommodate big-endian CPU Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 084/136] scsi: lpfc: Honor module parameter lpfc_use_adisc Ben Hutchings
2019-12-17  0:46 ` [PATCH 3.16 085/136] fuse: flush dirty data/metadata before non-truncate setattr Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 086/136] fuse: truncate pending writes on O_TRUNC Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 087/136] ASoC: kirkwood: fix external clock probe defer Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 088/136] MIPS: bmips: mark exception vectors as char arrays Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 089/136] MIPS: tlbex: Fix build_restore_pagemask KScratch restore Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 090/136] ipvs: move old_secure_tcp into struct netns_ipvs Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 091/136] bonding: fix unexpected IFF_BONDING bit unset Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 092/136] clk: samsung: exynos5420: Preserve PLL configuration during suspend/resume Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 093/136] ALSA: bebob: Fix prototype of helper function to return negative value Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 094/136] usb: gadget: udc: atmel: Fix interrupt storm in FIFO mode Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 095/136] perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise RIP validity Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 096/136] perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 097/136] clk: at91: avoid sleeping early Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 098/136] USB: ldusb: fix ring-buffer locking Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 099/136] USB: ldusb: fix control-message timeout Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 100/136] net: fix sk_page_frag() recursion from memory reclaim Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 101/136] scsi: qla2xxx: stop timer in shutdown path Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 102/136] USB: gadget: Reject endpoints with 0 maxpacket value Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 103/136] ceph: fix use-after-free in __ceph_remove_cap() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 104/136] ceph: add missing check in d_revalidate snapdir handling Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 105/136] USB: serial: whiteheat: fix potential slab corruption Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 106/136] USB: serial: whiteheat: fix line-speed endianness Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 107/136] nl80211: fix validation of mesh path nexthop Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 108/136] ALSA: timer: Simplify error path in snd_timer_open() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 109/136] ALSA: timer: Fix incorrectly assigned timer instance Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 110/136] ALSA: timer: Fix mutex deadlock at releasing card Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 111/136] s390/cmm: fix information leak in cmm_timeout_handler() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 112/136] inet: stop leaking jiffies on the wire Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 113/136] ALSA: bebob: fix to detect configured source of sampling clock for Focusrite Saffire Pro i/o series Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 114/136] dccp: do not leak jiffies on the wire Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 115/136] netfilter: ipset: Fix an error code in ip_set_sockfn_get() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 116/136] netfilter: nf_tables: Align nft_expr private data to 64-bit Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 117/136] can: usb_8dev: fix use-after-free on disconnect Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 118/136] can: peak_usb: fix a potential out-of-sync while decoding packets Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 119/136] can: c_can: c_can_poll(): only read status register after status IRQ Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 120/136] perf tools: Fix time sorting Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 121/136] mm, vmstat: hide /proc/pagetypeinfo from normal users Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 122/136] dump_stack: avoid the livelock of the dump_lock Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 123/136] drm/radeon: fix si_enable_smc_cac() failed issue Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 124/136] block: drbd: remove a stray unlock in __drbd_send_protocol() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 125/136] ALSA: usb-audio: Fix missing error check at mixer resolution test Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 126/136] ecryptfs_lookup_interpose(): lower_dentry->d_inode is not stable Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 127/136] ecryptfs_lookup_interpose(): lower_dentry->d_parent is not stable either Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 128/136] x86/quirks: Disable HPET on Intel Coffe Lake platforms Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 129/136] ALSA: usb-audio: not submit urb for stopped endpoint Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 130/136] mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 131/136] mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 132/136] virtio_console: allocate inbufs in add_port() only if it is needed Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 133/136] net/sched: act_pedit: fix WARN() in the traffic path Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 134/136] sfc: Only cancel the PPS workqueue if it exists Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 135/136] mm/ksm.c: don't WARN if page is still mapped in remove_stable_node() Ben Hutchings
2019-12-17  0:47 ` [PATCH 3.16 136/136] fs/dcache: move security_d_instantiate() behind attaching dentry to inode Ben Hutchings
2019-12-17 18:19 ` [PATCH 3.16 000/136] 3.16.80-rc1 review Guenter Roeck
2019-12-17 18:43   ` Ben Hutchings

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=lsq.1576543535.245209603@decadent.org.uk \
    --to=ben@decadent.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=bvanassche@acm.org \
    --cc=kda@linux-powerpc.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=stable@vger.kernel.org \
    --cc=yuyufen@huawei.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).