Commit b2b0154e authored by Stefan Weinhuber's avatar Stefan Weinhuber Committed by Martin Schwidefsky

s390/dasd: fix memory leak caused by dangling references to request_queue

After the call to del_gendisk, the gendisk still holds a reference to
its request_queue. We must not modify the gendisks queue pointer
before the put_disk call, or the gendisk_release function cannot
release the reference and the memory for the request_queue structure
is lost.
Signed-off-by: default avatarStefan Weinhuber <wein@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent af91706d
...@@ -87,7 +87,6 @@ void dasd_gendisk_free(struct dasd_block *block) ...@@ -87,7 +87,6 @@ void dasd_gendisk_free(struct dasd_block *block)
{ {
if (block->gdp) { if (block->gdp) {
del_gendisk(block->gdp); del_gendisk(block->gdp);
block->gdp->queue = NULL;
block->gdp->private_data = NULL; block->gdp->private_data = NULL;
put_disk(block->gdp); put_disk(block->gdp);
block->gdp = NULL; block->gdp = NULL;
......
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