|
@@ -416,12 +416,17 @@ static int clariion_bus_notify(struct notifier_block *nb,
|
|
unsigned long action, void *data)
|
|
unsigned long action, void *data)
|
|
{
|
|
{
|
|
struct device *dev = data;
|
|
struct device *dev = data;
|
|
- struct scsi_device *sdev = to_scsi_device(dev);
|
|
|
|
|
|
+ struct scsi_device *sdev;
|
|
struct scsi_dh_data *scsi_dh_data;
|
|
struct scsi_dh_data *scsi_dh_data;
|
|
struct clariion_dh_data *h;
|
|
struct clariion_dh_data *h;
|
|
int i, found = 0;
|
|
int i, found = 0;
|
|
unsigned long flags;
|
|
unsigned long flags;
|
|
|
|
|
|
|
|
+ if (!scsi_is_sdev_device(dev))
|
|
|
|
+ return 0;
|
|
|
|
+
|
|
|
|
+ sdev = to_scsi_device(dev);
|
|
|
|
+
|
|
if (action == BUS_NOTIFY_ADD_DEVICE) {
|
|
if (action == BUS_NOTIFY_ADD_DEVICE) {
|
|
for (i = 0; clariion_dev_list[i].vendor; i++) {
|
|
for (i = 0; clariion_dev_list[i].vendor; i++) {
|
|
if (!strncmp(sdev->vendor, clariion_dev_list[i].vendor,
|
|
if (!strncmp(sdev->vendor, clariion_dev_list[i].vendor,
|