imsm: only use the device name as a fallback when IMSM_DEVNAME_AS_SERIAL=1

Also ensure that the serial buffer is initialized.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
Dan Williams 2008-09-15 20:58:41 -07:00
parent 0c046afd06
commit f9ba0ff124
1 changed files with 5 additions and 7 deletions

View File

@ -849,16 +849,14 @@ static int imsm_read_serial(int fd, char *devname,
memset(scsi_serial, 0, sizeof(scsi_serial)); memset(scsi_serial, 0, sizeof(scsi_serial));
if (imsm_env_devname_as_serial()) { rv = scsi_get_serial(fd, scsi_serial, sizeof(scsi_serial));
char name[MAX_RAID_SERIAL_LEN];
if (rv && imsm_env_devname_as_serial()) {
fd2devname(fd, name); memset(serial, 0, MAX_RAID_SERIAL_LEN);
strcpy((char *) serial, name); fd2devname(fd, (char *) serial);
return 0; return 0;
} }
rv = scsi_get_serial(fd, scsi_serial, sizeof(scsi_serial));
if (rv != 0) { if (rv != 0) {
if (devname) if (devname)
fprintf(stderr, fprintf(stderr,