|
@@ -7,7 +7,7 @@
|
|
* Bugreports.to..: <Linux390@de.ibm.com>
|
|
* Bugreports.to..: <Linux390@de.ibm.com>
|
|
* (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999-2001
|
|
* (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999-2001
|
|
*
|
|
*
|
|
- * $Revision: 1.161 $
|
|
|
|
|
|
+ * $Revision: 1.164 $
|
|
*/
|
|
*/
|
|
|
|
|
|
#include <linux/config.h>
|
|
#include <linux/config.h>
|
|
@@ -1766,10 +1766,10 @@ dasd_generic_probe (struct ccw_device *cdev,
|
|
printk(KERN_WARNING
|
|
printk(KERN_WARNING
|
|
"dasd_generic_probe: could not add sysfs entries "
|
|
"dasd_generic_probe: could not add sysfs entries "
|
|
"for %s\n", cdev->dev.bus_id);
|
|
"for %s\n", cdev->dev.bus_id);
|
|
|
|
+ } else {
|
|
|
|
+ cdev->handler = &dasd_int_handler;
|
|
}
|
|
}
|
|
|
|
|
|
- cdev->handler = &dasd_int_handler;
|
|
|
|
-
|
|
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1780,6 +1780,8 @@ dasd_generic_remove (struct ccw_device *cdev)
|
|
{
|
|
{
|
|
struct dasd_device *device;
|
|
struct dasd_device *device;
|
|
|
|
|
|
|
|
+ cdev->handler = NULL;
|
|
|
|
+
|
|
dasd_remove_sysfs_files(cdev);
|
|
dasd_remove_sysfs_files(cdev);
|
|
device = dasd_device_from_cdev(cdev);
|
|
device = dasd_device_from_cdev(cdev);
|
|
if (IS_ERR(device))
|
|
if (IS_ERR(device))
|
|
@@ -1810,14 +1812,14 @@ dasd_generic_set_online (struct ccw_device *cdev,
|
|
struct dasd_device *device;
|
|
struct dasd_device *device;
|
|
int feature_diag, rc;
|
|
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);
|
|
device = dasd_create_device(cdev);
|
|
if (IS_ERR(device))
|
|
if (IS_ERR(device))
|
|
return PTR_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 (feature_diag) {
|
|
if (!dasd_diag_discipline_pointer) {
|
|
if (!dasd_diag_discipline_pointer) {
|
|
printk (KERN_WARNING
|
|
printk (KERN_WARNING
|