Revert "Revert "scsi: core: Add BLIST_NO_VPD_SIZE for some VDASD""
This reverts commit ad8dbd4420
.
It was perserving the ABI, but that is not needed anymore at this point
in time.
Change-Id: If9e034122448b199c0c98b689c6e6d0e52d388fd
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
parent
b21e700aa4
commit
d9e00246e0
@ -326,6 +326,9 @@ static int scsi_get_vpd_size(struct scsi_device *sdev, u8 page)
|
||||
unsigned char vpd_header[SCSI_VPD_HEADER_SIZE] __aligned(4);
|
||||
int result;
|
||||
|
||||
if (sdev->no_vpd_size)
|
||||
return SCSI_DEFAULT_VPD_LEN;
|
||||
|
||||
/*
|
||||
* Fetch the VPD page header to find out how big the page
|
||||
* is. This is done to prevent problems on legacy devices
|
||||
|
@ -134,7 +134,7 @@ static struct {
|
||||
{"3PARdata", "VV", NULL, BLIST_REPORTLUN2},
|
||||
{"ADAPTEC", "AACRAID", NULL, BLIST_FORCELUN},
|
||||
{"ADAPTEC", "Adaptec 5400S", NULL, BLIST_FORCELUN},
|
||||
{"AIX", "VDASD", NULL, BLIST_TRY_VPD_PAGES},
|
||||
{"AIX", "VDASD", NULL, BLIST_TRY_VPD_PAGES | BLIST_NO_VPD_SIZE},
|
||||
{"AFT PRO", "-IX CF", "0.0>", BLIST_FORCELUN},
|
||||
{"BELKIN", "USB 2 HS-CF", "1.95", BLIST_FORCELUN | BLIST_INQUIRY_36},
|
||||
{"BROWNIE", "1200U3P", NULL, BLIST_NOREPORTLUN},
|
||||
@ -188,6 +188,7 @@ static struct {
|
||||
{"HPE", "OPEN-", "*", BLIST_REPORTLUN2 | BLIST_TRY_VPD_PAGES},
|
||||
{"IBM", "AuSaV1S2", NULL, BLIST_FORCELUN},
|
||||
{"IBM", "ProFibre 4000R", "*", BLIST_SPARSELUN | BLIST_LARGELUN},
|
||||
{"IBM", "2076", NULL, BLIST_NO_VPD_SIZE},
|
||||
{"IBM", "2105", NULL, BLIST_RETRY_HWERROR},
|
||||
{"iomega", "jaz 1GB", "J.86", BLIST_NOTQ | BLIST_NOLUN},
|
||||
{"IOMEGA", "ZIP", NULL, BLIST_NOTQ | BLIST_NOLUN},
|
||||
|
@ -1058,6 +1058,9 @@ static int scsi_add_lun(struct scsi_device *sdev, unsigned char *inq_result,
|
||||
else if (*bflags & BLIST_SKIP_VPD_PAGES)
|
||||
sdev->skip_vpd_pages = 1;
|
||||
|
||||
if (*bflags & BLIST_NO_VPD_SIZE)
|
||||
sdev->no_vpd_size = 1;
|
||||
|
||||
transport_configure_device(&sdev->sdev_gendev);
|
||||
|
||||
if (sdev->host->hostt->slave_configure) {
|
||||
|
@ -145,6 +145,7 @@ struct scsi_device {
|
||||
const char * model; /* ... after scan; point to static string */
|
||||
const char * rev; /* ... "nullnullnullnull" before scan */
|
||||
|
||||
#define SCSI_DEFAULT_VPD_LEN 255 /* default SCSI VPD page size (max) */
|
||||
struct scsi_vpd __rcu *vpd_pg0;
|
||||
struct scsi_vpd __rcu *vpd_pg83;
|
||||
struct scsi_vpd __rcu *vpd_pg80;
|
||||
@ -214,6 +215,7 @@ struct scsi_device {
|
||||
* creation time */
|
||||
unsigned ignore_media_change:1; /* Ignore MEDIA CHANGE on resume */
|
||||
unsigned silence_suspend:1; /* Do not print runtime PM related messages */
|
||||
unsigned no_vpd_size:1; /* No VPD size reported in header */
|
||||
|
||||
unsigned int queue_stopped; /* request queue is quiesced */
|
||||
bool offline_already; /* Device offline message logged */
|
||||
|
@ -32,7 +32,8 @@
|
||||
#define BLIST_IGN_MEDIA_CHANGE ((__force blist_flags_t)(1ULL << 11))
|
||||
/* do not do automatic start on add */
|
||||
#define BLIST_NOSTARTONADD ((__force blist_flags_t)(1ULL << 12))
|
||||
#define __BLIST_UNUSED_13 ((__force blist_flags_t)(1ULL << 13))
|
||||
/* do not ask for VPD page size first on some broken targets */
|
||||
#define BLIST_NO_VPD_SIZE ((__force blist_flags_t)(1ULL << 13))
|
||||
#define __BLIST_UNUSED_14 ((__force blist_flags_t)(1ULL << 14))
|
||||
#define __BLIST_UNUSED_15 ((__force blist_flags_t)(1ULL << 15))
|
||||
#define __BLIST_UNUSED_16 ((__force blist_flags_t)(1ULL << 16))
|
||||
@ -74,8 +75,7 @@
|
||||
#define __BLIST_HIGH_UNUSED (~(__BLIST_LAST_USED | \
|
||||
(__force blist_flags_t) \
|
||||
((__force __u64)__BLIST_LAST_USED - 1ULL)))
|
||||
#define __BLIST_UNUSED_MASK (__BLIST_UNUSED_13 | \
|
||||
__BLIST_UNUSED_14 | \
|
||||
#define __BLIST_UNUSED_MASK (__BLIST_UNUSED_14 | \
|
||||
__BLIST_UNUSED_15 | \
|
||||
__BLIST_UNUSED_16 | \
|
||||
__BLIST_UNUSED_24 | \
|
||||
|
Loading…
Reference in New Issue
Block a user