|
@@ -1678,6 +1678,9 @@ static int storvsc_probe(struct hv_device *device,
|
|
|
bool dev_is_ide = ((dev_id->driver_data == IDE_GUID) ? true : false);
|
|
|
int target = 0;
|
|
|
struct storvsc_device *stor_device;
|
|
|
+ int max_luns_per_target;
|
|
|
+ int max_targets;
|
|
|
+ int max_channels;
|
|
|
|
|
|
/*
|
|
|
* Based on the windows host we are running on,
|
|
@@ -1691,12 +1694,18 @@ static int storvsc_probe(struct hv_device *device,
|
|
|
vmscsi_size_delta = sizeof(struct vmscsi_win8_extension);
|
|
|
vmstor_current_major = VMSTOR_WIN7_MAJOR;
|
|
|
vmstor_current_minor = VMSTOR_WIN7_MINOR;
|
|
|
+ max_luns_per_target = STORVSC_IDE_MAX_LUNS_PER_TARGET;
|
|
|
+ max_targets = STORVSC_IDE_MAX_TARGETS;
|
|
|
+ max_channels = STORVSC_IDE_MAX_CHANNELS;
|
|
|
break;
|
|
|
default:
|
|
|
sense_buffer_size = POST_WIN7_STORVSC_SENSE_BUFFER_SIZE;
|
|
|
vmscsi_size_delta = 0;
|
|
|
vmstor_current_major = VMSTOR_WIN8_MAJOR;
|
|
|
vmstor_current_minor = VMSTOR_WIN8_MINOR;
|
|
|
+ max_luns_per_target = STORVSC_MAX_LUNS_PER_TARGET;
|
|
|
+ max_targets = STORVSC_MAX_TARGETS;
|
|
|
+ max_channels = STORVSC_MAX_CHANNELS;
|
|
|
break;
|
|
|
}
|
|
|
|
|
@@ -1744,9 +1753,9 @@ static int storvsc_probe(struct hv_device *device,
|
|
|
break;
|
|
|
|
|
|
case SCSI_GUID:
|
|
|
- host->max_lun = STORVSC_MAX_LUNS_PER_TARGET;
|
|
|
- host->max_id = STORVSC_MAX_TARGETS;
|
|
|
- host->max_channel = STORVSC_MAX_CHANNELS - 1;
|
|
|
+ host->max_lun = max_luns_per_target;
|
|
|
+ host->max_id = max_targets;
|
|
|
+ host->max_channel = max_channels - 1;
|
|
|
break;
|
|
|
|
|
|
default:
|