# Hard drive seizures [SOLVED]

## parsim

Recently my PC has started locking up. It seems to be a disk problem: the drive light comes on and stays on, and any running processes that need disk access hang, while those that don't appear to keep running.

This seems to happen primarily when the disk is writing big files: e.g. while doing portage downloads or running VMWare. I find that I can go a week with no problem, then it will happen three times before I can complete a large download. (E.g. I start a download, after a minute or so the PC locks up, I reboot, resume download, it gets a bit further, then hangs again... eventually I get the whole file.). Then it's fine again for a few days.

I wouldn't be surprised if it's a dodgy disk, since I sent this thing back to the manufacturer once before and they actually repaired it and sent it back. (Who repairs disks? I thought they would just send me a new one.) But I don't have any real evidence.

The disk is a 200GB Seagate SATA. I patched my kernel to enable support S.M.A.R.T. for SATA disks, and this works fine but none of the tests I do show any problem. I don't know what else to do. Any idas?

I'm running kernel 2.6.14-gentoo-r2 and amd64 arch. Mostly the disk is formatted to ext3, but there's also a swap partition and a small ext2 boot partition.

```
# smartctl -a -data /dev/sda

smartctl version 5.33 [x86_64-pc-linux-gnu] Copyright (C) 2002-4 Bruce Allen

Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===

Device Model:     ST3200822AS

Serial Number:    3LJ292ME

Firmware Version: 3.01

User Capacity:    200,049,647,616 bytes

Device is:        In smartctl database [for details use: -P show]

ATA Version is:   6

ATA Standard is:  ATA/ATAPI-6 T13 1410D revision 2

Local Time is:    Sat Jan 21 13:06:49 2006 EST

SMART support is: Available - device has SMART capability.

SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===

SMART overall-health self-assessment test result: PASSED

General SMART Values:

Offline data collection status:  (0x82) Offline data collection activity

                                        was completed without error.

                                        Auto Offline 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 Offline

data collection:                 ( 430) seconds.

Offline data collection

capabilities:                    (0x5b) SMART execute Offline immediate.

                                        Auto Offline data collection on/off support.

                                        Suspend Offline collection upon new

                                        command.

                                        Offline surface scan supported.

                                        Self-test supported.

                                        No Conveyance Self-test supported.

                                        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:        (   1) minutes.

Extended self-test routine

recommended polling time:        ( 111) minutes.

SMART Attributes Data Structure revision number: 10

Vendor Specific SMART Attributes with Thresholds:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE

  1 Raw_Read_Error_Rate     0x000f   055   049   006    Pre-fail  Always       -       31061975

  3 Spin_Up_Time            0x0003   096   096   000    Pre-fail  Always       -       0

  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       118

  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0

  7 Seek_Error_Rate         0x000f   078   060   030    Pre-fail  Always       -       66005663

  9 Power_On_Hours          0x0032   099   099   000    Old_age   Always       -       1036

 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0

 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       121

194 Temperature_Celsius     0x0022   055   059   000    Old_age   Always       -       55

195 Hardware_ECC_Recovered  0x001a   055   049   000    Old_age   Always       -       31061975

197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0

198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0

199 UDMA_CRC_Error_Count    0x003e   200   198   000    Old_age   Always       -       23

200 Multi_Zone_Error_Rate   0x0000   100   253   000    Old_age   Offline      -       0

202 TA_Increase_Count       0x0032   100   253   000    Old_age   Always       -       0

SMART Error Log Version: 1

No Errors Logged

SMART Self-test log structure revision number 1

Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error

# 1  Short offline       Completed without error       00%       924         -

# 2  Extended offline    Completed without error       00%       793         -

# 3  Short offline       Completed without error       00%       792         -

# 4  Extended offline    Aborted by host               90%       792         -

SMART Selective self-test log data structure revision number 1

 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS

    1        0        0  Not_testing

    2        0        0  Not_testing

    3        0        0  Not_testing

    4        0        0  Not_testing

    5        0        0  Not_testing

Selective self-test flags (0x0):

  After scanning selected spans, do NOT read-scan remainder of disk.

If Selective self-test is pending on power-up, resume after 0 minute delay.
```

Last edited by parsim on Tue Feb 28, 2006 11:57 pm; edited 1 time in total

----------

## Johan_V

Try running Seagate diagnostics to see if the hard disk is faulty:

http://www.seagate.com/support/seatools/

----------

## parsim

Thanks for the tip. (I went overseas for two weeks; just got back.)

I ran the Seagate diagnostics and the disk passed a Full Surface Scan with no problems. I rebooted into Linux, tried to 'emerge update', and the disk locked up halfway through.

Any other ideas? It's very alarming to have a Linux box that crashes all the time... so Windows-like. *shudder*

----------

## Jaglover

Cooling. Is there any airflow around that disk? Overheating is a good and common way to kill disks.  :Sad: 

----------

## parsim

Thanks for the reply.

I moved the hard disk away from the other disks and left the side of the PC case off to provide maximum air flow. Still the disk seized up halfway through downloading a 90MB file.  :Sad: 

Any other ideas?

----------

## parsim

By the way, I've noticed that the disk seems to handle READING just fine. I can 'cat' a 700MB file with no problems. It's only WRITING large files (bigger than 10 - 30MB) that leads to lockups.

Neither the S.M.A.R.T. and Seagate Tools tests seem to write large files--in fact I'm not sure they test writing at all; they just seem to test reads.

I would love to find some evidence that it is the actual disk at fault and not Linux, but can't think how to do this without, say, wiping the disk and installing Windows on it.

----------

## parsim

I wrote to Seagate Seagate Tech Support and they replied:

 *Seagate wrote:*   

> Hello,
> 
>      please make sure of the drivers for you Sata controller.  make sure
> 
>  the drivers are for your sata controller and not RAID.  Refer to your
> ...

 

What does this mean? I think this is my SATA controller:

```
$ lspci

...

01:0d.0 Mass storage controller: Silicon Image, Inc. SiI 3512 [SATALink/SATARaid] Serial ATA Controller (rev 01)
```

and I have support enabled for it in my kernel:

```
CONFIG_SCSI_SATA_SIL=y
```

... so... what should I do?   :Sad: 

----------

## goofygrin

check out your hdparm settings... (hdparm -i /dev/hd?)

also anything in dmesg when this happens?

On my pata drives, it was auto falling back to no dma and was just whacking my computer.  I setup hdparm to roll back to udma3 on bootup and no more issues (I've got the drives in trays with long cables, so they can't run full speed without crc errors.

----------

## parsim

Thanks for the reply. Everything looks fine. DMA appears to be enabled. And the disk is nice and speedy 99% of the time... until it locks up. I have tried leaving it for a couple of hours to see if it comes back, and it doesn't.

I don't get any messages in dmesg or /var/log/messages when I run these commands.

```
eve ~ # hdparm -i /dev/sda

/dev/sda:

 HDIO_GET_IDENTITY failed: Inappropriate ioctl for device

eve ~ # hdparm -I /dev/sda

/dev/sda:

ATA device, with non-removable media

        Model Number:       ST3200822AS

        Serial Number:      3LJ292ME

        Firmware Revision:  3.01

Standards:

        Used: ATA/ATAPI-6 T13 1410D revision 2

        Supported: 6 5 4 3

Configuration:

        Logical         max     current

        cylinders       16383   16383

        heads           16      16

        sectors/track   63      63

        --

        CHS current addressable sectors:   16514064

        LBA    user addressable sectors:  268435455

        LBA48  user addressable sectors:  390721968

        device size with M = 1024*1024:      190782 MBytes

        device size with M = 1000*1000:      200049 MBytes (200 GB)

Capabilities:

        LBA, IORDY(can be disabled)

        bytes avail on r/w long: 4      Queue depth: 1

        Standby timer values: spec'd by Standard, no device specific minimum

        R/W multiple sector transfer: Max = 16  Current = 16

        Recommended acoustic management value: 254, current value: 0

        DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 *udma5 udma6

             Cycle time: min=120ns recommended=120ns

        PIO: pio0 pio1 pio2 pio3 pio4

             Cycle time: no flow control=240ns  IORDY flow control=120ns

Commands/features:

        Enabled Supported:

           *    READ BUFFER cmd

           *    WRITE BUFFER cmd

           *    Host Protected Area feature set

           *    Look-ahead

           *    Write cache

           *    Power Management feature set

                Security Mode feature set

           *    SMART feature set

           *    FLUSH CACHE EXT command

           *    Mandatory FLUSH CACHE command

           *    Device Configuration Overlay feature set

           *    48-bit Address feature set

                SET MAX security extension

           *    DOWNLOAD MICROCODE cmd

           *    SMART self-test

           *    SMART error logging

Security:

        Master password revision code = 65534

                supported

        not     enabled

        not     locked

        not     frozen

        not     expired: security count

        not     supported: enhanced erase

Checksum: correct
```

----------

## parsim

Don't want to speak too soon, but I upgraded my mainboard's BIOS (which also reset all BIOS settings to default) and I haven't had a lockup since, despite downloading big files. Fingers crossed...

----------

## parsim

Two weeks with no lockups... I'm calling it a fix!   :Very Happy: 

----------

