Tuesday, May 4, 2010

A big-little scare: Burning RaQ 4 ROM failure!!!!

Yesterday I started to update an spare RaQ 4i to use it as main server at home. The old RaQ 4 have worked the last 3 years without any stop and I feel that I need to change the server for caution.

This second RaQ 4i has two extra ethernets ports and two 120GB Seagate hard disks but now it's loaded with the old Cobalt OS (fully upgraded). I tried to compile MySQL 5.1.46 on it but I has some problems and decided to upgrade the kernel to 2.4.36 (Zeffie's kernel). But this new kernel needs ROM version 2.10.3-ext3.

First I started doing a backup of the old ROM:
[root /root]# ./flashtool -v -r > cobalt-2.3.34-1M.rom
./flashtool: searching for PCI 10b9:7101 : found it at /proc/bus/pci/00/03.0
./flashtool: systype = COBT_3K
./flashtool: bank 0: ST Microelectronics M29F080A 1MB
./flashtool: reading page 0
./flashtool: reading page 1
./flashtool: reading page 2
./flashtool: reading page 3
./flashtool: reading page 4
./flashtool: reading page 5
./flashtool: reading page 6
./flashtool: reading page 7
./flashtool: reading page 8
./flashtool: reading page 9
./flashtool: reading page 10
./flashtool: reading page 11
./flashtool: reading page 12
./flashtool: reading page 13
./flashtool: reading page 14
./flashtool: reading page 15
./flashtool: flushing buffers
Like I did before in other servers I started using Tim Hocking's flashtool and OUCH!!! FAILED!!!!:
[root /root]# ./flashtool -v -w cobalt-2.10.3-ext3-1M.rom
./flashtool: searching for PCI 10b9:7101 : found it at /proc/bus/pci/00/03.0
./flashtool: systype = COBT_3K
./flashtool: bank 0: ST Microelectronics M29F080A 1MB
./flashtool: writing page 0
./flashtool: buffer page 0 does not exist - creating it
./flashtool: writing page 1
./flashtool: buffer page 1 does not exist - creating it
./flashtool: writing page 2
./flashtool: buffer page 2 does not exist - creating it
./flashtool: writing page 3
./flashtool: buffer page 3 does not exist - creating it
./flashtool: writing page 4
./flashtool: buffer page 4 does not exist - creating it
./flashtool: writing page 5
./flashtool: buffer page 5 does not exist - creating it
./flashtool: writing page 6
./flashtool: buffer page 6 does not exist - creating it
./flashtool: writing page 7
./flashtool: buffer page 7 does not exist - creating it
./flashtool: writing page 8
./flashtool: buffer page 8 does not exist - creating it
./flashtool: writing page 9
./flashtool: buffer page 9 does not exist - creating it
./flashtool: writing page 10
./flashtool: buffer page 10 does not exist - creating it
./flashtool: writing page 11
./flashtool: buffer page 11 does not exist - creating it
./flashtool: writing page 12
./flashtool: buffer page 12 does not exist - creating it
./flashtool: writing page 13
./flashtool: buffer page 13 does not exist - creating it
./flashtool: writing page 14
./flashtool: buffer page 14 does not exist - creating it
./flashtool: writing page 15
./flashtool: buffer page 15 does not exist - creating it
./flashtool: flushing buffers
./flashtool:   flushing block 0 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 0! Bad flash chip?
 done
./flashtool:   flushing block 1 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 1! Bad flash chip?
 done
./flashtool:   flushing block 2 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 2! Bad flash chip?
 done
./flashtool:   flushing block 3 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 3! Bad flash chip?
 done
./flashtool:   flushing block 4 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 4! Bad flash chip?
 done
./flashtool:   flushing block 5 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 5! Bad flash chip?
 done
./flashtool:   flushing block 6 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 6! Bad flash chip?
 done
./flashtool:   flushing block 7 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 7! Bad flash chip?
 done
./flashtool:   flushing block 8 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 8! Bad flash chip?
 done
./flashtool:   flushing block 9 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 9! Bad flash chip?
 done
./flashtool:   flushing block 10 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 10! Bad flash chip?
 done
./flashtool:   flushing block 11 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 11! Bad flash chip?
 done
./flashtool:   flushing block 12 to ROM..../flashtool: flashrom_flush_buffers(): write failed for block 12! Bad flash chip?
 done
./flashtool:   flushing block 13 to ROM... verifying...  done
./flashtool:   flushing block 14 to ROM... verifying...  done
./flashtool:   flushing block 15 to ROM... verifying...  done
./flashtool: flashrom_cleanup(): device error flushing buffers
As you can see this server has the standard old ST ROM chip. I upgraded this brand roms with this tool but yesterday it won't run. Fortunately I have a copy of Duncan's flashtool (the small one - 400 KB) and it worked fine. I uploaded via FTP and burned the rom:
[root /root]# ./flashtool -v -w cobalt-2.10.3-ext3-1M.rom
./flashtool: searching for PCI 10b9:7101 : found it at /proc/bus/pci/00/03.0
./flashtool: systype = COBT_3K
./flashtool: bank 0: ST Microelectronics M29F080A 1MB
./flashtool: Using pthread POSIX real time scheduling.
./flashtool: writing page 0
./flashtool: buffer page 0 does not exist - creating it
./flashtool: writing page 1
./flashtool: buffer page 1 does not exist - creating it
./flashtool: writing page 2
./flashtool: buffer page 2 does not exist - creating it
./flashtool: writing page 3
(...)
Very important in this case was to not power off the server: if after a failed rom burn the server is powered off, the server will be a brick, totally dead.

For this reason now I have both flashtool programs mirrored in my server here: http://www.titox-net.es/downloads/cobalt/rom/

No comments: