aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
authorMaxim Shchetynin <maxim@de.ibm.com>2007-08-22 13:01:28 -0400
committerPaul Mackerras <paulus@samba.org>2007-08-25 02:58:27 -0400
commitb0e81ebb1062eba20fbcbe459662c0a6ec6075f7 (patch)
tree6c30bfaf5f3b149783e8e138466ef3d6bb2db817 /arch/powerpc
parentfedcd2c53d838e7a69df699ce2a14e45d34d7f7f (diff)
[POWERPC] axonram: Do not delete gendisks queue in error path
On exit do not delete gendisk's queue because this is already done by del_gendisk(). Doing it twice may cause memory damage. Signed-off-by: Maximilian <maxim@de.ibm.com> Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r--arch/powerpc/sysdev/axonram.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/arch/powerpc/sysdev/axonram.c b/arch/powerpc/sysdev/axonram.c
index eabbf82fda3a..ab037a3a40db 100644
--- a/arch/powerpc/sysdev/axonram.c
+++ b/arch/powerpc/sysdev/axonram.c
@@ -281,8 +281,6 @@ failed:
281 if (bank->irq_id != NO_IRQ) 281 if (bank->irq_id != NO_IRQ)
282 free_irq(bank->irq_id, device); 282 free_irq(bank->irq_id, device);
283 if (bank->disk != NULL) { 283 if (bank->disk != NULL) {
284 if (bank->disk->queue != NULL)
285 blk_cleanup_queue(bank->disk->queue);
286 if (bank->disk->major > 0) 284 if (bank->disk->major > 0)
287 unregister_blkdev(bank->disk->major, 285 unregister_blkdev(bank->disk->major,
288 bank->disk->disk_name); 286 bank->disk->disk_name);
@@ -310,7 +308,6 @@ axon_ram_remove(struct of_device *device)
310 308
311 device_remove_file(&device->dev, &dev_attr_ecc); 309 device_remove_file(&device->dev, &dev_attr_ecc);
312 free_irq(bank->irq_id, device); 310 free_irq(bank->irq_id, device);
313 blk_cleanup_queue(bank->disk->queue);
314 unregister_blkdev(bank->disk->major, bank->disk->disk_name); 311 unregister_blkdev(bank->disk->major, bank->disk->disk_name);
315 del_gendisk(bank->disk); 312 del_gendisk(bank->disk);
316 iounmap((void __iomem *) bank->io_addr); 313 iounmap((void __iomem *) bank->io_addr);