sd: get disk reference in sd_check_events()
authorHannes Reinecke <hare@suse.de>
Tue, 26 Apr 2016 06:06:58 +0000 (08:06 +0200)
committerDanny Wood <danwood76@gmail.com>
Tue, 29 Jan 2019 13:17:27 +0000 (13:17 +0000)
commit659ecd7a58e79a6425edf104cebb756d7e5c7958
tree9b15bd8934c5f098394d9d79bf36dbf33ebe6517
parentd590b47ef89c2993deaf612a44909354688b395f
sd: get disk reference in sd_check_events()

commit eb72d0bb84eee5d0dc3044fd17b75e7101dabb57 upstream.

sd_check_events() is called asynchronously, and might race
with device removal. So always take a disk reference when
processing the event to avoid the device being removed while
the event is processed.

Signed-off-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Ewan D. Milne <emilne@redhat.com>
Reviewed-by: Bart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Cc: Jinpu Wang <jinpu.wang@profitbricks.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/scsi/sd.c