Welcome! Log In Create A New Profile

Advanced

Goflex net too many bad eraseblocks

Posted by Bo 
Bo
Goflex net too many bad eraseblocks
January 26, 2012 08:32PM
Dear All

I recently got a goflex net and ran Shyd's script to install debian onto a USB harddrive. I then planned on moving the boot drive to SATA. Here is where I discovered a problem.

Initially, I ran fw_printenv to see uboot and set SATA stuff, but fw_printenv tells me "Too few good blocks in range."

I go to dmesg and find

[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.32-5-kirkwood (Debian 2.6.32-38) (ben@decadent.org.uk) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 Mon Oct 3 16:55:04 UTC 2011
[ 0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] Machine: Marvell SheevaPlug Reference Board
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] On node 0 totalpages: 32768
[ 0.000000] free_area_init_node: node 0, pgdat c03d50b4, node_mem_map c043f000
[ 0.000000] Normal zone: 256 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 32512 pages, LIFO batch:7
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
[ 0.000000] Kernel command line: console=ttyS0,115200 root=/dev/sda1 rootdelay=10 rootfstype=ext2 mtdparts=orion_nand:1M(u-boot),4M(uImage),32M(rootfs),-(data)
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Memory: 128MB = 128MB total
[ 0.000000] Memory: 121016KB available (3516K code, 583K data, 124K init, 0K highmem)
[ 0.000000] SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] NR_IRQS:114
[ 0.000000] Console: colour dummy device 80x30
[ 0.000124] Calibrating delay loop... 1192.75 BogoMIPS (lpj=5963776)
[ 0.240079] Security Framework initialized
[ 0.240099] SELinux: Disabled at boot.
[ 0.240119] Mount-cache hash table entries: 512
[ 0.240375] Initializing cgroup subsys ns
[ 0.240388] Initializing cgroup subsys cpuacct
[ 0.240397] Initializing cgroup subsys devices
[ 0.240405] Initializing cgroup subsys freezer
[ 0.240413] Initializing cgroup subsys net_cls
[ 0.240454] CPU: Testing write buffer coherency: ok
[ 0.241025] devtmpfs: initialized
[ 0.242435] regulator: core version 0.5
[ 0.242612] NET: Registered protocol family 16
[ 0.242997] Kirkwood: MV88F6281-A1, TCLK=200000000.
[ 0.243009] Feroceon L2: Cache support initialised.
[ 0.243409] initial MPP regs: 01111111 11113322 00001111 00100000 00000000 00000000 00000000
[ 0.243430] final MPP regs: 01111111 11113322 00001111 00000000 00000000 00000000 00000000
[ 0.244841] bio: create slab <bio-0> at 0
[ 0.245124] vgaarb: loaded
[ 0.245604] Switching to clocksource orion_clocksource
[ 0.249640] NET: Registered protocol family 2
[ 0.249884] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.250715] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[ 0.250815] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.250868] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.250877] TCP reno registered
[ 0.251028] NET: Registered protocol family 1
[ 0.251207] Unpacking initramfs...
[ 0.561693] Freeing initrd memory: 4420K
[ 0.561802] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.562051] audit: initializing netlink socket (disabled)
[ 0.562087] type=2000 audit(0.550:1): initialized
[ 0.568546] VFS: Disk quotas dquot_6.5.2
[ 0.568815] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.568926] JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
[ 0.569575] msgmni has been set to 245
[ 0.571320] alg: No test for stdrng (krng)
[ 0.571444] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[ 0.571457] io scheduler noop registered
[ 0.571464] io scheduler anticipatory registered
[ 0.571471] io scheduler deadline registered
[ 0.571651] io scheduler cfq registered (default)
[ 0.577747] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[ 0.578222] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
[ 0.901630] console [ttyS0] enabled
[ 0.905735] NAND device: Manufacturer ID: 0x98, Chip ID: 0xda (Toshiba NAND 256MiB 3,3V 8-bit)
[ 0.914398] Scanning device for bad blocks
[ 0.918602] Bad eraseblock 1 at 0x000000020000

The bad eraseblock stuff goes onto Bad eraseblock 2047, like below

[ 10.529400] Bad eraseblock 2047 at 0x00000ffe0000
[ 10.534169] 4 cmdlinepart partitions found on MTD device orion_nand
[ 10.540483] Creating 4 MTD partitions on "orion_nand":
[ 10.545659] 0x000000000000-0x000000100000 : "u-boot"
[ 10.551249] 0x000000100000-0x000000500000 : "uImage"
[ 10.556728] 0x000000500000-0x000002500000 : "rootfs"
[ 10.562206] 0x000002500000-0x000010000000 : "data"
[ 10.568267] mice: PS/2 mouse device common for all mice
[ 11.575646] rtc-mv rtc-mv: internal RTC not ticking
[ 11.580639] i2c /dev entries driver
[ 11.584314] cpuidle: using governor ladder
[ 11.588567] cpuidle: using governor menu
[ 11.592600] Registered led device: plug:green:health
[ 11.597667] mv_xor_shared mv_xor_shared.0: Marvell shared XOR driver
[ 11.604065] mv_xor_shared mv_xor_shared.1: Marvell shared XOR driver
[ 11.645673] mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
[ 11.685671] mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy )
[ 11.725670] mv_xor mv_xor.2: Marvell XOR: ( xor cpy )
[ 11.765671] mv_xor mv_xor.3: Marvell XOR: ( xor fill cpy )
[ 11.772353] TCP cubic registered
[ 11.775599] NET: Registered protocol family 17
[ 11.780095] Gating clock of unused units
[ 11.780103] before: 0x00dfc3fd
[ 11.780111] after: 0x00c701d9
[ 11.780428] registered taskstats version 1
[ 11.785213] /build/buildd-linux-2.6_2.6.32-38-armel-4UQXU_/linux-2.6-2.6.32/debian/build/source_armel_none/drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 11.799878] Initalizing network drop monitor service
[ 11.804924] Freeing init memory: 124K
[ 11.856108] udev[44]: starting version 164
[ 12.177279] usbcore: registered new interface driver usbfs
[ 12.192665] usbcore: registered new interface driver hub
[ 12.205656] MV-643xx 10/100/1000 ethernet driver version 1.4
[ 12.211710] usbcore: registered new device driver usb
[ 12.230862] mv643xx_eth smi: probed
[ 12.234594] mmc0: mvsdio driver initialized, lacking card detect (fall back to polling)
[ 12.252300] net eth0: port 0 with MAC address 00:10:75:26:90:2e
[ 12.258534] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 12.265144] orion-ehci orion-ehci.0: Marvell Orion EHCI
[ 12.273359] orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
[ 12.305657] orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
[ 12.325671] orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
[ 12.332076] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 12.338937] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 12.346203] usb usb1: Product: Marvell Orion EHCI
[ 12.350926] usb usb1: Manufacturer: Linux 2.6.32-5-kirkwood ehci_hcd
[ 12.357319] usb usb1: SerialNumber: orion-ehci.0
[ 12.362494] usb usb1: configuration #1 chosen from 1 choice
[ 12.368443] hub 1-0:1.0: USB hub found
[ 12.372242] hub 1-0:1.0: 1 port detected
[ 12.695651] usb 1-1: new high speed USB device using orion-ehci and address 2
[ 12.846551] usb 1-1: New USB device found, idVendor=4971, idProduct=ce21
[ 12.853293] usb 1-1: New USB device strings: Mfr=10, Product=11, SerialNumber=3
[ 12.860650] usb 1-1: Product: SimpleDrive mini
[ 12.865110] usb 1-1: Manufacturer: Hitachi GST
[ 12.869584] usb 1-1: SerialNumber: 2512010111110173
[ 12.875885] usb 1-1: configuration #1 chosen from 1 choice
[ 12.965836] SCSI subsystem initialized
[ 12.992996] Initializing USB Mass Storage driver...
[ 12.998210] scsi0 : SCSI emulation for USB Mass Storage devices
[ 13.004904] usbcore: registered new interface driver usb-storage
[ 13.011566] usb-storage: device found at 2
[ 13.011575] usb-storage: waiting for device to settle before scanning
[ 13.011611] USB Mass Storage support registered.
[ 18.006012] usb-storage: device scan complete
[ 18.048267] scsi 0:0:0:0: Direct-Access Hitachi HTS545050B9A300 PQ: 0 ANSI: 2 CCS
[ 18.085959] sd 0:0:0:0: [sda] 976773168 512-byte logical blocks: (500 GB/465 GiB)
[ 18.094192] sd 0:0:0:0: [sda] Write Protect is off
[ 18.099026] sd 0:0:0:0: [sda] Mode Sense: 28 00 00 00
[ 18.099036] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 18.106690] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 18.112817] sda: sda1 sda2
[ 18.140192] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 18.146345] sd 0:0:0:0: [sda] Attached SCSI disk
[ 23.769692] udev[161]: starting version 164
[ 24.793966] Adding 976552k swap on /dev/sda2. Priority:-1 extents:1 across:976552k
[ 27.962060] eth0: link up, 100 Mb/s, full duplex, flow control disabled
[ 30.496982] NET: Registered protocol family 10
[ 41.035636] eth0: no IPv6 routers present

I followed http://forum.doozan.com/read.php?3,5728,5770, to try to nandwrite Jeff's uboot onto the first 8 blocks. Of course I followed Bohdi's September 04, 2011 05:28PM thread and had the same results. Specifically, I ran Jeff's uboot script without uboot check, and the script reported the same result as the above post. I then ran flash_erase and nandwrite like Bohdi. Nandwrite reported writing block 1 and 7 and was only able to partially write jeff's uboot. I thought all these bad blocks are BS, and rebooted. Yet, the goflex still boots to USB.

Any clue on what's causing the bad blocks?
Re: Goflex net too many bad eraseblocks
February 02, 2012 12:13PM
Hate to be a "me too", but I have this same problem on my GoFlex Home after sticking ArchLinuxARM on the SATA like this.

The difference is, it sounds like you have more of a clue about what you're doing than I do! I'm nervous about trying anything in case I lose my working system, but it would be nice to be able to set the correct MAC address and know that there isn't something "wrong" lurking in there :)
Re: Goflex net too many bad eraseblocks
March 31, 2012 03:08PM
I think we found the source of the problem here: http://forum.doozan.com/read.php?2,7451,7497#msg-7497

But it would be nice to have confirmation from some other people.
Re: Goflex net too many bad eraseblocks
April 26, 2012 09:12AM
This issue has been resolved, update your kernel and reboot! :)
Re: Goflex net too many bad eraseblocks
April 26, 2012 04:37PM
Confirmed fixed! Thanks :D
cyb
Re: Goflex net too many bad eraseblocks
July 29, 2012 08:38AM
Does somebody have a ready Kernel deb file for installation (with the patch included), that also works without problems with UBIT 0.6? I tried davygravy's kernel 3.3.2 and shyd's kernel 3.3.3 but the both won't boot. The only working so far (but having the "bad eraseblock" errors) is varkey's 2.6.38.8 kernel.
Re: Goflex net too many bad eraseblocks
August 13, 2012 09:16PM
if you have the wrong arc_number and you are experiencing the Too Few Good Blocks error, then you need a special kernel roll that davygravy whipped up. You see the patch for Too Few Good Blocks error is rolled into many of davygravy's kernels, specifically his 3.3.2 that supports most devices, and rescue v2.8, which is great! .... ONLY IF your arc_number is set properly. But when your arc_number is wrong the kernel looks at that incorrect number and says "this architecture doesn't need the patch because it's not affected by the blocks error".

So, davygravy made a special kernel that reads the incorrect arc_number and knows to apply the patch anyway. Then you will be able to boot into the system and enable netconsole for uboot. This is the first thing you should do so that you can gain access to uboot and control your boot process interactively without having to have a serial cable. You can either then use netconsole or the debian system to manage your uboot environment.

Either that or just make a physical serial connection and do whatever you want that way :)

PS- I'll have to find you the link for davygravy's special kernel, but if you're ambitious you can search and find it because it is linked somewhere in the forums here.
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: