提交 67955ba3 编写于 作者: S Stephen M. Cameron 提交者: Christoph Hellwig

hpsa: fix handling of hpsa_volume_offline return value

Make return value an int instead of an unsigned char so that
we do not lose negative error return values.
Signed-off-by: NStephen M. Cameron <scameron@beardog.cce.hp.com>
Reviewed-by: NWebb Scales <webb.scales@hp.com>
Reported-by: NDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: NChristoph Hellwig <hch@lst.de>
上级 a84d794d
......@@ -2543,11 +2543,11 @@ static int hpsa_get_volume_status(struct ctlr_info *h,
/* Determine offline status of a volume.
* Return either:
* 0 (not offline)
* -1 (offline for unknown reasons)
* 0xff (offline for unknown reasons)
* # (integer code indicating one of several NOT READY states
* describing why a volume is to be kept offline)
*/
static unsigned char hpsa_volume_offline(struct ctlr_info *h,
static int hpsa_volume_offline(struct ctlr_info *h,
unsigned char scsi3addr[])
{
struct CommandList *c;
......@@ -2646,11 +2646,15 @@ static int hpsa_update_device_info(struct ctlr_info *h,
if (this_device->devtype == TYPE_DISK &&
is_logical_dev_addr_mode(scsi3addr)) {
int volume_offline;
hpsa_get_raid_level(h, scsi3addr, &this_device->raid_level);
if (h->fw_support & MISC_FW_RAID_OFFLOAD_BASIC)
hpsa_get_ioaccel_status(h, scsi3addr, this_device);
this_device->volume_offline =
hpsa_volume_offline(h, scsi3addr);
volume_offline = hpsa_volume_offline(h, scsi3addr);
if (volume_offline < 0 || volume_offline > 0xff)
volume_offline = HPSA_VPD_LV_STATUS_UNSUPPORTED;
this_device->volume_offline = volume_offline & 0xff;
} else {
this_device->raid_level = RAID_UNKNOWN;
this_device->offload_config = 0;
......
......@@ -151,7 +151,7 @@
#define HPSA_VPD_HEADER_SZ 4
/* Logical volume states */
#define HPSA_VPD_LV_STATUS_UNSUPPORTED -1
#define HPSA_VPD_LV_STATUS_UNSUPPORTED 0xff
#define HPSA_LV_OK 0x0
#define HPSA_LV_UNDERGOING_ERASE 0x0F
#define HPSA_LV_UNDERGOING_RPI 0x12
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册