April 25th, 2014

Never trust spinning rust that refuses to reallocate sectors

(old indian proverb)

Playstation PS/3 is a small computer... that tries a lot not to look like a computer. I thought journalling is an old invention, but when I powered it off using power plug I was reminded that that's not the case. Result was 10 minute filesystem check, with note that it will take 4 (?!) hours if any problems are found. Ouch.

Anyway, it got me thinking. With 4 hours filesystem check time, it clearly has way bigger drive that it needs. 500GB... And hdd in my notebook refuses to reallocate bad sectors. (By some miracle, I did not really lose any data, and it was mostly behaving ok.) Refusing to finish tests is also not big problem, but it also made me nervous. Time to swap disks.

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Momentus 5400.6 series
Device Model:     ST9500325AS
Serial Number:    5VE41HDA
Firmware Version: 0001SDM1
User Capacity:    500,107,862,016 bytes
...
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
...
  1 Raw_Read_Error_Rate     0x000f   097   092   006    Pre-fail  Always       -       23719990
  3 Spin_Up_Time            0x0003   099   098   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   099   099   020    Old_age   Always       -       1349
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       12
  7 Seek_Error_Rate         0x000f   082   060   030    Pre-fail  Always       -       8963080173
  9 Power_On_Hours          0x0032   062   062   000    Old_age   Always       -       34070
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   099   037   020    Old_age   Always       -       1320
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   001   001   000    Old_age   Always       -       179
188 Command_Timeout         0x0032   100   094   000    Old_age   Always       -       42950329567
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   061   045   045    Old_age   Always   In_the_past 39 (Lifetime Min/Max 22/42)
191 G-Sense_Error_Rate      0x0032   100   100   000    Old_age   Always       -       2
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       3
193 Load_Cycle_Count        0x0032   001   001   000    Old_age   Always       -       2337789
194 Temperature_Celsius     0x0022   039   055   000    Old_age   Always       -       39 (0 6 0 0)
195 Hardware_ECC_Recovered  0x001a   049   029   000    Old_age   Always       -       23719990
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       2
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       2
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
254 Free_Fall_Sensor        0x0032   100   100   000    Old_age   Always       -       0
...
Error 170 occurred at disk power-on lifetime: 34070 hours (1419 days + 14 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 ff ff ff 0f  Error: UNC at LBA = 0x0fffffff = 268435455

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  25 00 08 ff ff ff ef 00      13:30:21.079  READ DMA EXT
  25 00 08 ff ff ff ef 00      13:30:18.250  READ DMA EXT
  25 00 08 ff ff ff ef 00      13:30:17.700  READ DMA EXT
  25 00 08 ff ff ff ef 00      13:30:17.646  READ DMA EXT
  25 00 08 ff ff ff ef 00      13:30:17.644  READ DMA EXT
...Error 166 occurred at disk power-on lifetime: 34057 hours (1419 days + 1 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 ff ff ff 0f  Error: UNC at LBA = 0x0fffffff = 268435455

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  25 00 08 ff ff ff ef 00      00:56:25.218  READ DMA EXT
  25 00 08 ff ff ff ef 00      00:56:25.217  READ DMA EXT
  25 00 08 ff ff ff ef 00      00:56:25.216  READ DMA EXT
  25 00 18 ff ff ff ef 00      00:56:25.215  READ DMA EXT
  25 00 10 ff ff ff ef 00      00:56:25.214  READ DMA EXT

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Aborted by host               90%     33409         -
# 2  Extended offline    Completed: read failure       90%     31692         961237184
# 3  Extended offline    Completed: read failure       90%     30723         961237184
# 4  Extended offline    Completed: read failure       90%     28305         961237188
# 5  Extended offline    Completed: read failure       90%     28262         961237187
# 6  Extended offline    Completed: read failure       90%     28257         961237188
# 7  Extended offline    Completed: read failure       90%     28251         961237188
# 8  Extended offline    Completed: read failure       90%     28233         961237188
# 9  Extended offline    Completed: read failure       90%     28227         961237188
#10  Extended offline    Completed without error       00%     23826         -
#11  Extended offline    Completed without error       00%      9419         -
#12  Extended offline    Completed without error       00%        40         -


It turned out that swapping disk in PS/3 is not an easy process. You need additional disk to perform backup to, side cover is not really easy to remove, and box is dead and needs "software update" after you swap the disk. It took few hours total. (Come on, 18GB of save game data...?)

I got single transient error when trying to copy out the data.

cp: reading `wnow/tmp/www.chmi.cz/meteo/rad/data/1309201315.gif': Input/output error


So far so good.