Commit b695adfa authored by Stefan Haberland's avatar Stefan Haberland Committed by Martin Schwidefsky

[S390] dasd: correct offline processing

Flushing the dasd ccw request queue may stop the processing of the
block device request queue. Destroy partitions may wait for
outstanding requests and thus hang.
Swapping dasd_destroy_partitions and dasd_flush_request_queue so that
the request queue is empty before dasd_destroy_partitions is called.
Signed-off-by: default avatarStefan Haberland <stefan.haberland@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 589c74d5
...@@ -323,8 +323,8 @@ static int dasd_state_ready_to_basic(struct dasd_device *device) ...@@ -323,8 +323,8 @@ static int dasd_state_ready_to_basic(struct dasd_device *device)
device->state = DASD_STATE_READY; device->state = DASD_STATE_READY;
return rc; return rc;
} }
dasd_destroy_partitions(block);
dasd_flush_request_queue(block); dasd_flush_request_queue(block);
dasd_destroy_partitions(block);
block->blocks = 0; block->blocks = 0;
block->bp_block = 0; block->bp_block = 0;
block->s2b_shift = 0; block->s2b_shift = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment