diff options
author | David Woodhouse <dwmw2@shinybook.infradead.org> | 2005-05-19 11:54:00 +0100 |
---|---|---|
committer | David Woodhouse <dwmw2@shinybook.infradead.org> | 2005-05-19 11:54:00 +0100 |
commit | 7063e6c717f6108c4b3fc3135a516c86ef944870 (patch) | |
tree | ec6eec10b4dc93474100e6e366df028bd3314fda /drivers/s390/block/dasd.c | |
parent | 7ca0026495dbb644b4e32ede76be44072cb2bc7a (diff) | |
parent | 05d3794aa8bd3b2c9f7920a05003c331cdeb75c5 (diff) |
Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'drivers/s390/block/dasd.c')
-rw-r--r-- | drivers/s390/block/dasd.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/s390/block/dasd.c b/drivers/s390/block/dasd.c index 02cfe244e06..ceeb3cf64a1 100644 --- a/drivers/s390/block/dasd.c +++ b/drivers/s390/block/dasd.c @@ -7,7 +7,7 @@ * Bugreports.to..: <Linux390@de.ibm.com> * (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999-2001 * - * $Revision: 1.161 $ + * $Revision: 1.164 $ */ #include <linux/config.h> @@ -1766,10 +1766,10 @@ dasd_generic_probe (struct ccw_device *cdev, printk(KERN_WARNING "dasd_generic_probe: could not add sysfs entries " "for %s\n", cdev->dev.bus_id); + } else { + cdev->handler = &dasd_int_handler; } - cdev->handler = &dasd_int_handler; - return ret; } @@ -1780,6 +1780,8 @@ dasd_generic_remove (struct ccw_device *cdev) { struct dasd_device *device; + cdev->handler = NULL; + dasd_remove_sysfs_files(cdev); device = dasd_device_from_cdev(cdev); if (IS_ERR(device)) @@ -1810,14 +1812,14 @@ dasd_generic_set_online (struct ccw_device *cdev, struct dasd_device *device; int feature_diag, rc; - feature_diag = dasd_get_feature(cdev, DASD_FEATURE_USEDIAG); - if (feature_diag < 0) - return feature_diag; - device = dasd_create_device(cdev); if (IS_ERR(device)) return PTR_ERR(device); + feature_diag = dasd_get_feature(cdev, DASD_FEATURE_USEDIAG); + if (feature_diag < 0) + return feature_diag; + if (feature_diag) { if (!dasd_diag_discipline_pointer) { printk (KERN_WARNING |