s390/tape: Use del_timer_sync()
del_timer() does not wait for a possible running callback to complete. So the call side might free request and the associated objects while on another cpu the timer handler runs. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
committed by
Martin Schwidefsky
parent
bd1cb5de14
commit
02ba8d211d
@@ -78,7 +78,7 @@ tape_std_assign(struct tape_device *device)
|
|||||||
|
|
||||||
rc = tape_do_io_interruptible(device, request);
|
rc = tape_do_io_interruptible(device, request);
|
||||||
|
|
||||||
del_timer(&timeout);
|
del_timer_sync(&timeout);
|
||||||
|
|
||||||
if (rc != 0) {
|
if (rc != 0) {
|
||||||
DBF_EVENT(3, "%08x: assign failed - device might be busy\n",
|
DBF_EVENT(3, "%08x: assign failed - device might be busy\n",
|
||||||
|
Reference in New Issue
Block a user