vitlav/hddtemp

hddtemp fails with hpsa (HP P410i in HBA mode)

vitlav opened this issue · 0 comments

# hddtemp
/dev/sdb: TOSHIBA HDWE160: 44°C
/dev/sdc: ATA WDC WD10EARS-00Y:  drive supported, but it doesn't have a temperature sensor.

both these drives connected to HP P410i
02:00.0 RAID bus controller: Hewlett-Packard Company Smart Array G6 controllers (rev 01)
controller in HBA mode (patched hpsa kernel module)

# smartctl -a /dev/sdb
/dev/sdb: requires option '-d cciss,N'
Please specify device type with the -d option.

[root@clients hdd]# smartctl -a /dev/sdb -d cciss,0 | grep -i temper
194 Temperature_Celsius     0x0022   100   100   000    Old_age   Always       -       45 (Min/Max 19/45)
[root@clients hdd]# smartctl -a /dev/sdc -d cciss,1 | grep -i temper
194 Temperature_Celsius     0x0022   100   100   000    Old_age   Always       -       47

# strace -f hddtemp  /dev/sdc
openat(AT_FDCWD, "/dev/sdc", O_RDONLY|O_NONBLOCK) = 3
ioctl(3, SCSI_IOCTL_GET_BUS_NUMBER, 0x7fff7e3cf358) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=6, cmdp="\x12\x00\x00\x00\x24\x00", mx_sb_len=0, iovec_count=0, dxfer_len=36, timeout=3000, flags=0, dxferp="\x00\x00\x05\x02\x5b\x00\x80\x02\x41\x54\x41\x20\x20\x20\x20\x20\x57\x44\x43\x20\x57\x44\x31\x30\x45\x41\x52\x53\x2d\x30\x30\x59"..., status=0, masked_status=0, msg_status=0, sb_len_wr=0, sbp=NULL, host_status=0, driver_status=0, resid=0, duration=2, info=0}) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=16, cmdp="\x85\x08\x2e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00", mx_sb_len=32, iovec_count=0, dxfer_len=512, timeout=3000, flags=0, dxferp="\x7a\x42\xff\x3f\x37\xc8\x10\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x00\x00\x00\x00\x20\x20\x20\x20\x57\x20\x2d\x44\x43\x57\x56\x41"..., status=0x2, masked_status=0x1, msg_status=0, sb_len_wr=18, sbp="\x70\x00\x01\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x1d\x00\x00\x00\x00", host_status=0, driver_status=0x8, resid=0, duration=13, info=SG_INFO_CHECK}) = 0
ioctl(3, HDIO_GET_IDENTITY, 0x40c5e0)   = -1 ENOTTY (Неприменимый к данному устройству ioctl)
ioctl(3, SCSI_IOCTL_GET_BUS_NUMBER, 0x7fff7e3cf594) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=6, cmdp="\x12\x00\x00\x00\x24\x00", mx_sb_len=0, iovec_count=0, dxfer_len=36, timeout=3000, flags=0, dxferp="\x00\x00\x05\x02\x5b\x00\x80\x02\x41\x54\x41\x20\x20\x20\x20\x20\x57\x44\x43\x20\x57\x44\x31\x30\x45\x41\x52\x53\x2d\x30\x30\x59"..., status=0, masked_status=0, msg_status=0, sb_len_wr=0, sbp=NULL, host_status=0, driver_status=0, resid=0, duration=2, info=0}) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=6, cmdp="\x1a\x00\x1c\x00\xff\x00", mx_sb_len=0, iovec_count=0, dxfer_len=255, timeout=3000, flags=0, dxferp="\x17\x00\x10\x08\x00\x00\x00\x00\x00\x00\x02\x00\x1c\x0a\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00", status=0, masked_status=0, msg_status=0, sb_len_wr=0, sbp=NULL, host_status=0, driver_status=0, resid=231, duration=0, info=0}) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=6, cmdp="\x1a\x00\x1c\x00\xff\x00", mx_sb_len=0, iovec_count=0, dxfer_len=255, timeout=3000, flags=0, dxferp="\x17\x00\x10\x08\x00\x00\x00\x00\x00\x00\x02\x00\x1c\x0a\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00", status=0, masked_status=0, msg_status=0, sb_len_wr=0, sbp=NULL, host_status=0, driver_status=0, resid=231, duration=1, info=0}) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=10, cmdp="\x4d\x00\x40\x00\x00\x00\x00\x04\x00\x00", mx_sb_len=0, iovec_count=0, dxfer_len=1024, timeout=3000, flags=0, dxferp="\x00\x00\x00\x02\x00\x2f", status=0, masked_status=0, msg_status=0, sb_len_wr=0, sbp=NULL, host_status=0, driver_status=0, resid=1018, duration=1, info=0}) = 0
...
fstat(4, {st_mode=S_IFREG|0644, st_size=2071, ...}) = 0
mmap(NULL, 2071, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7f9611378000
close(4)                                = 0
write(2, "/dev/sdc: ATA WDC WD10EARS-00Y: "..., 92/dev/sdc: ATA WDC WD10EARS-00Y:  drive supported, but it doesn't have a temperature sensor.
) = 92
exit_group(0)
# strace -f hddtemp  /dev/sdb
openat(AT_FDCWD, "/dev/sdb", O_RDONLY|O_NONBLOCK) = 3
ioctl(3, SCSI_IOCTL_GET_BUS_NUMBER, 0x7ffd71b43b38) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=6, cmdp="\x12\x00\x00\x00\x24\x00", mx_sb_len=0, iovec_count=0, dxfer_len=36, timeout=3000, flags=0, dxferp="\x00\x00\x05\x02\x5b\x00\x80\x02\x41\x54\x41\x20\x20\x20\x20\x20\x54\x4f\x53\x48\x49\x42\x41\x20\x48\x44\x57\x45\x31\x36\x30\x20"..., status=0, masked_status=0, msg_status=0, sb_len_wr=0, sbp=NULL, host_status=0, driver_status=0, resid=0, duration=2, info=0}) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=16, cmdp="\x85\x08\x2e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00", mx_sb_len=32, iovec_count=0, dxfer_len=512, timeout=3000, flags=0, dxferp="\x40\x00\xff\x3f\x37\xc8\x10\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x00\x00\x00\x00\x20\x20\x20\x20\x20\x20\x20\x20\x30\x39\x41\x4b"..., status=0x2, masked_status=0x1, msg_status=0, sb_len_wr=22, sbp="\x72\x01\x00\x1d\x00\x00\x00\x0e\x09\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", host_status=0, driver_status=0x8, resid=0, duration=11, info=SG_INFO_CHECK}) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=16, cmdp="\x85\x08\x2e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00", mx_sb_len=32, iovec_count=0, dxfer_len=512, timeout=3000, flags=0, dxferp="\x40\x00\xff\x3f\x37\xc8\x10\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x00\x00\x00\x00\x20\x20\x20\x20\x20\x20\x20\x20\x30\x39\x41\x4b"..., status=0x2, masked_status=0x1, msg_status=0, sb_len_wr=22, sbp="\x72\x01\x00\x1d\x00\x00\x00\x0e\x09\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", host_status=0, driver_status=0x8, resid=0, duration=12, info=SG_INFO_CHECK}) = 0
openat(AT_FDCWD, "/usr/share/misc/hddtemp.db", O_RDONLY) = 4
read(4, "# Minimal database for drives no"..., 1024) = 1024
read(4, "TTA-35*\"\t\t\t0\tC\t\"IBM Deskstar 16G"..., 1018) = 1018
read(4, "18GAS\"\n\"TOSHIBA MK3017GAP\"\t\t0\tC\t"..., 984) = 858
read(4, "", 1024)                       = 0
close(4)                                = 0
brk(0xd6a000)                           = 0xd6a000
brk(0xd8b000)                           = 0xd8b000
ioctl(3, HDIO_DRIVE_CMD, {command=ATA_CMD_CHK_POWER, sector_number=0, feature=0, sector_count=0}) = -1 ENOTTY (Неприменимый к данному устройству ioctl)
ioctl(3, HDIO_DRIVE_CMD, {command=0x98 /* ATA_CMD_??? */, sector_number=0, feature=0, sector_count=0}) = -1 ENOTTY (Неприменимый к данному устройству ioctl)
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_NONE, cmd_len=16, cmdp="\x85\x06\x20\x00\xd8\x00\x00\x00\x00\x00\x4f\x00\xc2\x00\xb0\x00", mx_sb_len=32, iovec_count=0, dxfer_len=0, timeout=3000, flags=0, status=0x2, masked_status=0x1, msg_status=0, sb_len_wr=22, sbp="\x72\x01\x00\x1d\x00\x00\x00\x0e\x09\x0c\x00\x00\x00\x00\x00\x00\x00\x4f\x00\xc2\x00\x50", host_status=0, driver_status=0x8, resid=0, duration=12, info=SG_INFO_CHECK}) = 0
ioctl(3, SG_IO, {interface_id='S', dxfer_direction=SG_DXFER_FROM_DEV, cmd_len=16, cmdp="\x85\x08\x2e\x00\xd0\x00\x01\x00\x00\x00\x4f\x00\xc2\x00\xb0\x00", mx_sb_len=32, iovec_count=0, dxfer_len=512, timeout=3000, flags=0, dxferp="\x10\x00\x01\x0b\x00\x64\x64\x00\x00\x00\x00\x00\x00\x00\x02\x05\x00\x64\x64\x00\x00\x00\x00\x00\x00\x00\x03\x27\x00\x64\x64\x9a"..., status=0x2, masked_status=0x1, msg_status=0, sb_len_wr=22, sbp="\x72\x01\x00\x1d\x00\x00\x00\x0e\x09\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", host_status=0, driver_status=0x8, resid=0, duration=142, info=SG_INFO_CHECK}) = 0
brk(0xdb2000)                           = 0xdb2000
brk(0xdaa000)                           = 0xdaa000
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x1), ...}) = 0
write(1, "/dev/sdb: TOSHIBA HDWE160: 45\302\260C"..., 33/dev/sdb: TOSHIBA HDWE160: 45°C
) = 33
exit_group(0)