From: Maciej W. R. <ma...@ds...> - 2003-05-27 15:31:22
|
Hello, The following fix should count as obvious. Please apply. BTW, smartd refuses to disable/enable offline testing if the automatic timer isn't supported, while smartctl executes the command anyway and at least one drive seems to respond to this command regardless: [the output is shortened a bit] # smartctl -i /dev/hda === START OF INFORMATION SECTION === Device Model: ST320423A Firmware Version: 3.02 Device is: Not in smartctl database [for details use: -P showall] ATA Version is: 5 ATA Standard is: Exact ATA specification draft version not indicated Local Time is: Tue May 27 17:24:58 2003 CEST SMART support is: Available - device has SMART capability. SMART support is: Enabled # smartctl -c /dev/hda === START OF READ SMART DATA SECTION === General SMART Values: Off-line data collection status: (0x02) Offline data collection activity completed without error. Auto Off-line Data Collection: Disabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete off-line data collection: (2400) seconds. Offline data collection capabilities: (0x1d) SMART execute Offline immediate. No Automatic timer ON/OFF support. Abort Offline collection upon new command. Offline surface scan supported. Self-test supported. No Conveyance Self-test supported. No Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. No General Purpose Logging support. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 26) minutes. # smartctl -o on /dev/hda === START OF ENABLE/DISABLE COMMANDS SECTION === Warning: device does not support SMART Automatic Timers. SMART Automatic Offline Testing Enabled every four hours. # smartctl -c /dev/hda === START OF READ SMART DATA SECTION === General SMART Values: Off-line data collection status: (0x82) Offline data collection activity completed without error. Auto Off-line Data Collection: Enabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete off-line data collection: (2400) seconds. Offline data collection capabilities: (0x1d) SMART execute Offline immediate. No Automatic timer ON/OFF support. Abort Offline collection upon new command. Offline surface scan supported. Self-test supported. No Conveyance Self-test supported. No Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. No General Purpose Logging support. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 26) minutes. Is it an intended limitation of smartd or just a bug? Maciej -- + Maciej W. Rozycki, Technical University of Gdansk, Poland + +--------------------------------------------------------------+ + e-mail: ma...@ds..., PGP key available + smartmontools-5.1-11-smartd-auto-offline.patch diff -up --recursive --new-file smartmontools-5.1-11.macro/smartd.c smartmontools-5.1-11/smartd.c --- smartmontools-5.1-11.macro/smartd.c 2003-05-06 07:57:05.000000000 +0000 +++ smartmontools-5.1-11/smartd.c 2003-05-26 23:56:43.000000000 +0000 @@ -670,7 +670,7 @@ int atadevicescan2(atadevices_t *devices // enable automatic on-line testing if (cfg->autoofflinetest==2){ - if (devices->smartval && isSupportAutomaticTimer(devices->smartval) && !ataDisableAutoOffline(fd)) + if (devices->smartval && isSupportAutomaticTimer(devices->smartval) && !ataEnableAutoOffline(fd)) printout(LOG_INFO,"Device: %s, enabled SMART Automatic Offline Testing.\n",device); else printout(LOG_INFO,"Device: %s, could not enable SMART Automatic Offline Testing.\n",device); |
From: Bruce A. <ba...@gr...> - 2003-06-11 19:00:00
|
Maciej, Apparently email to the smartmontools mailing list was being held for moderation for two weeks without the list admins (including myself) being notified. So I only just received this email. Your patch is of course completely correct, and I'll apply it immediately. Thank you very much for noticing this. Bruce On Tue, 27 May 2003, Maciej W. Rozycki wrote: > Hello, > > The following fix should count as obvious. Please apply. > > BTW, smartd refuses to disable/enable offline testing if the automatic > timer isn't supported, while smartctl executes the command anyway and at > least one drive seems to respond to this command regardless: > > [the output is shortened a bit] > # smartctl -i /dev/hda > > === START OF INFORMATION SECTION === > Device Model: ST320423A > Firmware Version: 3.02 > Device is: Not in smartctl database [for details use: -P showall] > ATA Version is: 5 > ATA Standard is: Exact ATA specification draft version not indicated > Local Time is: Tue May 27 17:24:58 2003 CEST > SMART support is: Available - device has SMART capability. > SMART support is: Enabled > > # smartctl -c /dev/hda > > === START OF READ SMART DATA SECTION === > General SMART Values: > Off-line data collection status: (0x02) Offline data collection activity > completed without error. > Auto Off-line Data Collection: Disabled. > Self-test execution status: ( 0) The previous self-test routine completed > without error or no self-test has ever > been run. > Total time to complete off-line > data collection: (2400) seconds. > Offline data collection > capabilities: (0x1d) SMART execute Offline immediate. > No Automatic timer ON/OFF support. > Abort Offline collection upon new > command. > Offline surface scan supported. > Self-test supported. > No Conveyance Self-test supported. > No Selective Self-test supported. > SMART capabilities: (0x0003) Saves SMART data before entering > power-saving mode. > Supports SMART auto save timer. > Error logging capability: (0x01) Error logging supported. > No General Purpose Logging support. > Short self-test routine > recommended polling time: ( 2) minutes. > Extended self-test routine > recommended polling time: ( 26) minutes. > > # smartctl -o on /dev/hda > > === START OF ENABLE/DISABLE COMMANDS SECTION === > Warning: device does not support SMART Automatic Timers. > > SMART Automatic Offline Testing Enabled every four hours. > > # smartctl -c /dev/hda > > === START OF READ SMART DATA SECTION === > General SMART Values: > Off-line data collection status: (0x82) Offline data collection activity > completed without error. > Auto Off-line Data Collection: Enabled. > Self-test execution status: ( 0) The previous self-test routine completed > without error or no self-test has ever > been run. > Total time to complete off-line > data collection: (2400) seconds. > Offline data collection > capabilities: (0x1d) SMART execute Offline immediate. > No Automatic timer ON/OFF support. > Abort Offline collection upon new > command. > Offline surface scan supported. > Self-test supported. > No Conveyance Self-test supported. > No Selective Self-test supported. > SMART capabilities: (0x0003) Saves SMART data before entering > power-saving mode. > Supports SMART auto save timer. > Error logging capability: (0x01) Error logging supported. > No General Purpose Logging support. > Short self-test routine > recommended polling time: ( 2) minutes. > Extended self-test routine > recommended polling time: ( 26) minutes. > > Is it an intended limitation of smartd or just a bug? > > Maciej > > -- > + Maciej W. Rozycki, Technical University of Gdansk, Poland + > +--------------------------------------------------------------+ > + e-mail: ma...@ds..., PGP key available + > > smartmontools-5.1-11-smartd-auto-offline.patch > diff -up --recursive --new-file smartmontools-5.1-11.macro/smartd.c smartmontools-5.1-11/smartd.c > --- smartmontools-5.1-11.macro/smartd.c 2003-05-06 07:57:05.000000000 +0000 > +++ smartmontools-5.1-11/smartd.c 2003-05-26 23:56:43.000000000 +0000 > @@ -670,7 +670,7 @@ int atadevicescan2(atadevices_t *devices > > // enable automatic on-line testing > if (cfg->autoofflinetest==2){ > - if (devices->smartval && isSupportAutomaticTimer(devices->smartval) && !ataDisableAutoOffline(fd)) > + if (devices->smartval && isSupportAutomaticTimer(devices->smartval) && !ataEnableAutoOffline(fd)) > printout(LOG_INFO,"Device: %s, enabled SMART Automatic Offline Testing.\n",device); > else > printout(LOG_INFO,"Device: %s, could not enable SMART Automatic Offline Testing.\n",device); > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Etnus, makers of TotalView, The best > thread debugger on the planet. Designed with thread debugging features > you've never dreamed of, try TotalView 6 free at www.etnus.com. > _______________________________________________ > Smartmontools-support mailing list > Sma...@li... > https://lists.sourceforge.net/lists/listinfo/smartmontools-support > |
From: Bruce A. <ba...@gr...> - 2003-06-11 19:13:34
|
Hi Maciej, > The following fix should count as obvious. Please apply. Done, it's in CVS. > BTW, smartd refuses to disable/enable offline testing if the > automatic timer isn't supported, while smartctl executes the command > anyway and at least one drive seems to respond to this command > regardless: Unfortunately this command is not part of ANY ATA specification, so it's hard to program correctly. It's a legacy of the early undocumented days of SMART. Currently smartctl issues a warning if the command appears to be unsuported, but tries issuing the command anyway. smartd gives up immediately if the command appears unsupported. I'd be happy to recode smartd (or to accept your recoded version, if you want to do it) so that smartd behaves the same way as smartctl - namely it just issues a warning if the command appears unsupported, but tries it anyway. I think this might be better -- do you agree? Cheers, Bruce |
From: Maciej W. R. <ma...@ds...> - 2003-06-11 19:44:43
|
Hi Bruce, > > BTW, smartd refuses to disable/enable offline testing if the > > automatic timer isn't supported, while smartctl executes the command > > anyway and at least one drive seems to respond to this command > > regardless: > > Unfortunately this command is not part of ANY ATA specification, so it's > hard to program correctly. It's a legacy of the early undocumented days > of SMART. I have a few old S.M.A.R.T. (and other) documents from mid 90's downloaded from the old WDC site (fission.dt.wdc.com). I think I've seen a note on the bits somewhere. I may make the docs available to you if you are interested. > Currently smartctl issues a warning if the command appears to be > unsuported, but tries issuing the command anyway. smartd gives up > immediately if the command appears unsupported. I'd be happy to recode > smartd (or to accept your recoded version, if you want to do it) so that > smartd behaves the same way as smartctl - namely it just issues a warning > if the command appears unsupported, but tries it anyway. > > I think this might be better -- do you agree? Definitely. I'm not sure if I find time to code the change myself -- probably not. I have a lot of stuff to do elsewhere, sorry. Maciej -- + Maciej W. Rozycki, Technical University of Gdansk, Poland + +--------------------------------------------------------------+ + e-mail: ma...@ds..., PGP key available + |
From: Bruce A. <ba...@gr...> - 2003-06-11 20:20:32
|
> > > BTW, smartd refuses to disable/enable offline testing if the > > > automatic timer isn't supported, while smartctl executes the command > > > anyway and at least one drive seems to respond to this command > > > regardless: > > > > Unfortunately this command is not part of ANY ATA specification, so it's > > hard to program correctly. It's a legacy of the early undocumented days > > of SMART. > > I have a few old S.M.A.R.T. (and other) documents from mid 90's > downloaded from the old WDC site (fission.dt.wdc.com). I think I've > seen a note on the bits somewhere. I may make the docs available to > you if you are interested. I would like very much to get copies of these documents. Could you perhaps send me photocopies? I'll be in Germany starting in about a week. You could send them to me there - let me know if you want a snail-mail address. > > Currently smartctl issues a warning if the command appears to be > > unsuported, but tries issuing the command anyway. smartd gives up > > immediately if the command appears unsupported. I'd be happy to recode > > smartd (or to accept your recoded version, if you want to do it) so that > > smartd behaves the same way as smartctl - namely it just issues a warning > > if the command appears unsupported, but tries it anyway. > > > > I think this might be better -- do you agree? > > Definitely. I'm not sure if I find time to code the change myself -- > probably not. I have a lot of stuff to do elsewhere, sorry. I'll code it -- look for it in the next release. Perhaps you could just test it when that release comes out. Cheers, Bruce |
From: Bruce A. <ba...@gr...> - 2003-06-12 12:21:07
|
> > > Currently smartctl issues a warning if the command appears to be > > > unsuported, but tries issuing the command anyway. smartd gives up > > > immediately if the command appears unsupported. I'd be happy to recode > > > smartd (or to accept your recoded version, if you want to do it) so that > > > smartd behaves the same way as smartctl - namely it just issues a warning > > > if the command appears unsupported, but tries it anyway. > > > > > > I think this might be better -- do you agree? > > > > Definitely. I'm not sure if I find time to code the change myself -- > > probably not. I have a lot of stuff to do elsewhere, sorry. > > I'll code it -- look for it in the next release. Perhaps you could just > test it when that release comes out. I've just put the code into CVS. If you would be willing to test this by downloading and building the latest CVS version, I would appreciate it. Cheers, Bruce |
From: Maciej W. R. <ma...@ds...> - 2003-06-13 17:53:42
|
On Thu, 12 Jun 2003, Bruce Allen wrote: > I've just put the code into CVS. If you would be willing to test this by > downloading and building the latest CVS version, I would appreciate it. It looks right to me: smartd[1986]: smartd version 5.1-14 Copyright (C) 2002-3 Bruce Allen smartd[1986]: Home page is http://smartmontools.sourceforge.net/ smartd[1986]: Using configuration file /etc/smartd.conf smartd[1986]: Device: /dev/hda, opened smartd[1986]: Device: /dev/hda, not found in smartd database. smartd[1986]: Device: /dev/hda, enabled SMART Attribute Autosave. smartd[1986]: Device: /dev/hda, SMART Automatic Offline Testing unsupported... smartd[1986]: Device: /dev/hda, enabled SMART Automatic Offline Testing . smartd[1986]: Device: /dev/hda, is SMART capable. Adding to "monitor" list. smartd[1986]: Started monitoring 1 ATA and 0 SCSI devices smart: smartd startup succeeded except possibly that space before a full stop. ;-) -- + Maciej W. Rozycki, Technical University of Gdansk, Poland + +--------------------------------------------------------------+ + e-mail: ma...@ds..., PGP key available + |
From: Bruce A. <ba...@gr...> - 2003-06-13 18:02:27
|
> > I've just put the code into CVS. If you would be willing to test this by > > downloading and building the latest CVS version, I would appreciate it. > > It looks right to me: Thanks for checking! > except possibly that space before a full stop. ;-) Thanks for pointing this out. I just fixed it (in CVS). Cheers, Bruce > > |