# What's spinning my disks down?



## jem (Feb 1, 2012)

I built a little FreeBSD-based NAS a couple of days ago based on a VIA Artigo A2000 system.  It's a small form factor machine with space for two 3.5" disks, which I've configured as a mirrored zpool.

There is a problem with the disks spinning down after only a couple of minutes of idleness though and I can't work out what's causing it.  They're not low-powered drives that are designed to do it themselves, so I can only assume that the BIOS or the OS is doing it.

I've disabled every power management related option I can find in the BIOS setup and it's still happening.  What settings should I check in FreeBSD to find out if they're the cause?


----------



## kpa (Feb 1, 2012)

Install sysutils/ataidle and see what it reports as the APM setting for the drives.


----------



## kpa (Feb 1, 2012)

It seems to work on my 9.0 release based server:

```
# ataidle /dev/ada0
Model:                  SAMSUNG HD753LJ                         
Serial:                 S13UJDWS301624      
Firmware Rev:           1AA01113
ATA revision:           ATA-7
LBA 48:                 yes
Geometry:               16383 cyls, 16 heads, 63 spt
Capacity:               698GB
SMART Supported:        yes
SMART Enabled:          yes
Write Cache Supported:  yes
Write Cache Enabled:    yes
APM Supported:          yes
APM Enabled:            no
AAM Supported:          yes
AAM Enabled:            no
Vendor Recommended AAM: 127
```

I'm not exactly sure if the APM mode actually reveals anything about the spin down time.


----------



## Anonymous (Feb 1, 2012)

kpa said:
			
		

> I'm not exactly sure if the APM mode actually reveals anything about the spin down time.



The APM level controls the spin down time, and this can be changed for supported drives in /etc/rc.conf like follows:


```
ataidle_enable="YES"
ataidle_devices="ada1"
ataidle_ada1="-P 254"
```

Obviously, you need to change "ada1" to the name of your device node. You can name also more than one devices in the ataidle_devices list. Then you can set the desired settings for each drive with *ataidle_adaX=* commands.

My drive reports:

```
# ataidle /dev/ada1
Model:			SAMSUNG HM641JI                         
Serial:			S23TJ11Z300419      
Firmware Rev:		2AJ10001
ATA revision:		ATA-8
LBA 48:			yes
Geometry:		16383 cyls, 16 heads, 63 spt
Capacity:		596GB
SMART Supported: 	yes
SMART Enabled: 		yes
Write Cache Supported: 	yes
Write Cache Enabled: 	yes
APM Supported: 		yes
APM Enabled: 		yes
APM Value: 		254
AAM Supported: 		yes
AAM Enabled: 		no
Vendor Recommended AAM: 127
```

An APM level of 254 means "max. Power", i.e. don't spin down the drive.

Best regards

Rolf


----------



## kpa (Feb 1, 2012)

Yeah that much I've figured out but what I meant was deducing the time out value itself from the APM setting. In addition to setting the APM setting to 254 (max power) one can also try to set it to 0 (APM disabled).


----------



## Anonymous (Feb 1, 2012)

kpa said:
			
		

> Yeah that much I've figured out but what I meant was deducing the time out value itself from the APM setting. In addition to setting the APM setting to 254 (max power) one can also try to set it to 0 (APM disabled).



The meaning of the numbers is listed in ataidle(8)(). The man states that the implementation is vendor specific, which quite probably means that each disk type got its own time settings for spinning down. If you need to know it exactly, then use a stop-watch waiting for the click.


----------



## wblock@ (Feb 1, 2012)

jem said:
			
		

> I built a little FreeBSD-based NAS a couple of days ago based on a VIA Artigo A2000 system.  It's a small form factor machine with space for two 3.5" disks, which I've configured as a mirrored zpool.
> 
> There is a problem with the disks spinning down after only a couple of minutes of idleness though and I can't work out what's causing it.  They're not low-powered drives that are designed to do it themselves, so I can only assume that the BIOS or the OS is doing it.



What brand and model of drive?


----------



## jem (Feb 1, 2012)

2x Seagate Barracuda 7200.11:


```
root@artigo:~ # ataidle /dev/ada0
Model:                  [red]ST3500320AS[/red]
Serial:                 9QM31EC1
Firmware Rev:           SD1A
ATA revision:           ATA-8
LBA 48:                 yes
Geometry:               16383 cyls, 16 heads, 63 spt
Capacity:               465GB
SMART Supported:        yes
SMART Enabled:          yes
Write Cache Supported:  yes
Write Cache Enabled:    yes
[red]APM Supported:          no[/red]
AAM Supported:          no
```

These are standard 7200rpm desktop drives.  No "Green" characteristics, such as lower RPM or short idle timeout.


----------

