diff options
Diffstat (limited to 'drivers/usb/storage/usb.c')
| -rw-r--r-- | drivers/usb/storage/usb.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/usb/storage/usb.c b/drivers/usb/storage/usb.c index d468d02179f4..5600c33fcadb 100644 --- a/drivers/usb/storage/usb.c +++ b/drivers/usb/storage/usb.c @@ -889,6 +889,12 @@ static void usb_stor_scan_dwork(struct work_struct *work)  	    !(us->fflags & US_FL_SCM_MULT_TARG)) {  		mutex_lock(&us->dev_mutex);  		us->max_lun = usb_stor_Bulk_max_lun(us); +		/* +		 * Allow proper scanning of devices that present more than 8 LUNs +		 * While not affecting other devices that may need the previous behavior +		 */ +		if (us->max_lun >= 8) +			us_to_host(us)->max_lun = us->max_lun+1;  		mutex_unlock(&us->dev_mutex);  	}  	scsi_scan_host(us_to_host(us));  |