|
@@ -555,7 +555,7 @@ static struct se_device *pscsi_create_virtdevice(
|
|
if (!(pdv)) {
|
|
if (!(pdv)) {
|
|
printk(KERN_ERR "Unable to locate struct pscsi_dev_virt"
|
|
printk(KERN_ERR "Unable to locate struct pscsi_dev_virt"
|
|
" parameter\n");
|
|
" parameter\n");
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-EINVAL);
|
|
}
|
|
}
|
|
/*
|
|
/*
|
|
* If not running in PHV_LLD_SCSI_HOST_NO mode, locate the
|
|
* If not running in PHV_LLD_SCSI_HOST_NO mode, locate the
|
|
@@ -565,7 +565,7 @@ static struct se_device *pscsi_create_virtdevice(
|
|
if (phv->phv_mode == PHV_LLD_SCSI_HOST_NO) {
|
|
if (phv->phv_mode == PHV_LLD_SCSI_HOST_NO) {
|
|
printk(KERN_ERR "pSCSI: Unable to locate struct"
|
|
printk(KERN_ERR "pSCSI: Unable to locate struct"
|
|
" Scsi_Host for PHV_LLD_SCSI_HOST_NO\n");
|
|
" Scsi_Host for PHV_LLD_SCSI_HOST_NO\n");
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-ENODEV);
|
|
}
|
|
}
|
|
/*
|
|
/*
|
|
* For the newer PHV_VIRUTAL_HOST_ID struct scsi_device
|
|
* For the newer PHV_VIRUTAL_HOST_ID struct scsi_device
|
|
@@ -574,7 +574,7 @@ static struct se_device *pscsi_create_virtdevice(
|
|
if (!(se_dev->su_dev_flags & SDF_USING_UDEV_PATH)) {
|
|
if (!(se_dev->su_dev_flags & SDF_USING_UDEV_PATH)) {
|
|
printk(KERN_ERR "pSCSI: udev_path attribute has not"
|
|
printk(KERN_ERR "pSCSI: udev_path attribute has not"
|
|
" been set before ENABLE=1\n");
|
|
" been set before ENABLE=1\n");
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-EINVAL);
|
|
}
|
|
}
|
|
/*
|
|
/*
|
|
* If no scsi_host_id= was passed for PHV_VIRUTAL_HOST_ID,
|
|
* If no scsi_host_id= was passed for PHV_VIRUTAL_HOST_ID,
|
|
@@ -587,12 +587,12 @@ static struct se_device *pscsi_create_virtdevice(
|
|
printk(KERN_ERR "pSCSI: Unable to set hba_mode"
|
|
printk(KERN_ERR "pSCSI: Unable to set hba_mode"
|
|
" with active devices\n");
|
|
" with active devices\n");
|
|
spin_unlock(&hba->device_lock);
|
|
spin_unlock(&hba->device_lock);
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-EEXIST);
|
|
}
|
|
}
|
|
spin_unlock(&hba->device_lock);
|
|
spin_unlock(&hba->device_lock);
|
|
|
|
|
|
if (pscsi_pmode_enable_hba(hba, 1) != 1)
|
|
if (pscsi_pmode_enable_hba(hba, 1) != 1)
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-ENODEV);
|
|
|
|
|
|
legacy_mode_enable = 1;
|
|
legacy_mode_enable = 1;
|
|
hba->hba_flags |= HBA_FLAGS_PSCSI_MODE;
|
|
hba->hba_flags |= HBA_FLAGS_PSCSI_MODE;
|
|
@@ -602,14 +602,14 @@ static struct se_device *pscsi_create_virtdevice(
|
|
if (!(sh)) {
|
|
if (!(sh)) {
|
|
printk(KERN_ERR "pSCSI: Unable to locate"
|
|
printk(KERN_ERR "pSCSI: Unable to locate"
|
|
" pdv_host_id: %d\n", pdv->pdv_host_id);
|
|
" pdv_host_id: %d\n", pdv->pdv_host_id);
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-ENODEV);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
if (phv->phv_mode == PHV_VIRUTAL_HOST_ID) {
|
|
if (phv->phv_mode == PHV_VIRUTAL_HOST_ID) {
|
|
printk(KERN_ERR "pSCSI: PHV_VIRUTAL_HOST_ID set while"
|
|
printk(KERN_ERR "pSCSI: PHV_VIRUTAL_HOST_ID set while"
|
|
" struct Scsi_Host exists\n");
|
|
" struct Scsi_Host exists\n");
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-EEXIST);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -644,7 +644,7 @@ static struct se_device *pscsi_create_virtdevice(
|
|
hba->hba_flags &= ~HBA_FLAGS_PSCSI_MODE;
|
|
hba->hba_flags &= ~HBA_FLAGS_PSCSI_MODE;
|
|
}
|
|
}
|
|
pdv->pdv_sd = NULL;
|
|
pdv->pdv_sd = NULL;
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-ENODEV);
|
|
}
|
|
}
|
|
return dev;
|
|
return dev;
|
|
}
|
|
}
|
|
@@ -660,7 +660,7 @@ static struct se_device *pscsi_create_virtdevice(
|
|
hba->hba_flags &= ~HBA_FLAGS_PSCSI_MODE;
|
|
hba->hba_flags &= ~HBA_FLAGS_PSCSI_MODE;
|
|
}
|
|
}
|
|
|
|
|
|
- return NULL;
|
|
|
|
|
|
+ return ERR_PTR(-ENODEV);
|
|
}
|
|
}
|
|
|
|
|
|
/* pscsi_free_device(): (Part of se_subsystem_api_t template)
|
|
/* pscsi_free_device(): (Part of se_subsystem_api_t template)
|