From: Christian Franke on
Franc Zabkar wrote:
> On Fri, 07 Sep 2007 22:10:35 +0200, Christian Franke
> <...> put finger to keyboard and composed:
>>> ...
>> Thanks for the info.
>> SMART STATUS returns function not implemented.
>
> According to section 3.1.4 of Seagate's U8 Product Manual, the
> "S.M.A.R.T. Return Status" command is implemented for this drive:
>
> http://www.seagate.com/support/disc/manuals/ata/u8pmb.pdf
>
>> Probably a driver issue.
>
> If I have read the SMART specs correctly, the Return Status command is
> a mandatory component of the SMART feature set. Therefore wouldn't it
> be odd if MS omitted this function from its smartvsd driver?
>

It is implemented in smartvsd.vxd and worked at least on Win98SE with
esdi_506.pdr and smartvsd.vxd from 1999-04-23, MD5:
7e98fae3d43769bcc0ecc0cdc93b7fdd esdi_506.pdr
7809459e198163c9f5b65a728367a65d smartvsd.vxd

Possible issues:

- smartvsd.vxd detects the drive as not fully supporting SMART. AFIAK,
ERROR_INVALID_FUNCTION (1) is returned for all functions except IDENTIFY
regardless whether the real ATA function actually works.

- A third party ATA driver is used.

- There is a bug in the Win9X code of recent smartmontools releases. The
very first smartctl windows release 5.29 from 2004 was actually
developed on 98SE, but I no longer do any regression testing on 9x/ME.
(All releases are still available at sourceforge. If an older release
works, please tell me!)

- The Win98SE has been upgraded from a previous Windows release. It is a
known issue that Windows setup does not reliably install/upgrade
smartvxd.vxd. See smartmontools INSTALL file for details.


> ...
> Could you please indulge me by helping me understand the error report?
>
> I believe the Input line defines the command, features register,
> sector number, sector count, cyl low, cyl high for the Return Status
> subcommand (0xDA).
>

Yes.


> But I don't understand the "errno=40". Does this reflect the Status or
> Error registers, or is it internal to the program? AIUI, the Status
> register should be set to 0x40 if there is no error, otherwise the
> Error register should be set to 0x04 "if the device does not support
> this command, or if SMART is disabled".
>
> ===================================================================
> REPORT-IOCTL: DeviceFD=0 Command=SMART STATUS
> SMART_SEND_DRIVE_COMMAND failed, Error=1
> Input : CMD=0xb0, FR=0xda, SC=0x00, NS=0x00, CL=0x4f, CH=0xc2,
> SEL=0x00
> REPORT-IOCTL: DeviceFD=0 Command=SMART STATUS returned -1 errno=40
> [Function not implemented]
> ===================================================================
>

The DeviceIoControl() call returns Error 1 (GetLastError() ==
ERROR_INVALID_FUNCTION). It does not return any ATA registers in this
case. There is no evidence whether the actual ATA command was executed
or not.

Smartmontools is a portable app (8 Platforms) with Linux roots,
therefore the error code is mapped to more general (C89, POSIX) form
errno = ENOSYS (40).

Christian
From: Franc Zabkar on
On Sat, 08 Sep 2007 18:41:25 +0200, Christian Franke
<Christian.Franke(a)t-online.de> put finger to keyboard and composed:

>Franc Zabkar wrote:

>> On Fri, 07 Sep 2007 22:10:35 +0200, Christian Franke
>> <...> put finger to keyboard and composed:

>>> Probably a driver issue.
>>
>> If I have read the SMART specs correctly, the Return Status command is
>> a mandatory component of the SMART feature set. Therefore wouldn't it
>> be odd if MS omitted this function from its smartvsd driver?
>>
>It is implemented in smartvsd.vxd and worked at least on Win98SE with
>esdi_506.pdr and smartvsd.vxd from 1999-04-23, MD5:
>7e98fae3d43769bcc0ecc0cdc93b7fdd esdi_506.pdr
>7809459e198163c9f5b65a728367a65d smartvsd.vxd

I'm using the 1999-04-23 versions of both drivers.

>Possible issues:
>
>- smartvsd.vxd detects the drive as not fully supporting SMART. AFIAK,
>ERROR_INVALID_FUNCTION (1) is returned for all functions except IDENTIFY
>regardless whether the real ATA function actually works.
>
>- A third party ATA driver is used.

No.

>- There is a bug in the Win9X code of recent smartmontools releases. The
>very first smartctl windows release 5.29 from 2004 was actually
>developed on 98SE, but I no longer do any regression testing on 9x/ME.
>(All releases are still available at sourceforge. If an older release
>works, please tell me!)

Version 5.37 appears to have a bug.

Version 5.30 works OK, although I thought I was downloading version
5.29:
http://sourceforge.net/project/showfiles.php?group_id=64297&package_id=61413&release_id=219247

Here is the output:
http://www.users.on.net/~fzabkar/Smartctl/13gb.log

Thanks for your help.

- Franc Zabkar
--
Please remove one 'i' from my address when replying by email.
From: Christian Franke on
Franc Zabkar wrote:
> On Sat, 08 Sep 2007 18:41:25 +0200, Christian Franke
> <...> put finger to keyboard and composed:
> ...
>> - There is a bug in the Win9X code of recent smartmontools releases. The
>> very first smartctl windows release 5.29 from 2004 was actually
>> developed on 98SE, but I no longer do any regression testing on 9x/ME.
>> (All releases are still available at sourceforge. If an older release
>> works, please tell me!)
>
> Version 5.37 appears to have a bug.
>
> Version 5.30 works OK, although I thought I was downloading version
> 5.29:
> http://sourceforge.net/project/showfiles.php?group_id=64297&package_id=61413&release_id=219247
>
> Here is the output:
> http://www.users.on.net/~fzabkar/Smartctl/13gb.log
>


There is actually a regression that was introduced when 3ware RAID
support was added. I will fix this.

Release 5.36 and the 5.37 test release 5.37-0-20060720 should work on
9x/ME. See http://smartmontools.sourceforge.net/#WindowsInstall for a
download link for test releases.


> Thanks for your help.

Thanks for the bug report.

Christian
From: Franc Zabkar on
On Sun, 09 Sep 2007 22:24:18 +0200, Christian Franke
<Christian.Franke(a)t-online.de> put finger to keyboard and composed:

>There is actually a regression that was introduced when 3ware RAID
>support was added. I will fix this.
>
>Release 5.36 and the 5.37 test release 5.37-0-20060720 should work on
>9x/ME. See http://smartmontools.sourceforge.net/#WindowsInstall for a
>download link for test releases.

Yes, 5.37.0 works.

- Franc Zabkar
--
Please remove one 'i' from my address when replying by email.