jffs2_scan_eraseblock(): Magic bitmask not found at

Alles eine Frage des Images
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

jffs2_scan_eraseblock(): Magic bitmask not found at

Beitrag von bellum »

Hallo zusammen,
ich flashe mir öfters neue selbst erstellte Images. Bei meiner Sagem fällt mir seit einiger zeit folgendes auf. Direkt beim Reboot nach dem Flashvorgang in Neutrino ist das Bootloog völlig sauber. Mache ich danach einen Neustart erhalte ich im Bootloog folgende Fehlermeldungen.

Code: Alles auswählen

jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0000: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0004: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0008: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e000c: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0010: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0014: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0018: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e001c: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0020: 0x5555 instead
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x001e0024: 0x5555 instead
Further such events for this erase block will not be printed
Chip reports voltage low on erase: status 0xa8
Erase at 0x001e0000 failed immediately: errno -5
Schint so, dass das jffs2 filesystem korrupt ist aber bei 0x001e0014 liegt doch squashfs. :gruebel:

Code: Alles auswählen

Creating 6 MTD partitions on "D-Box 2 flash memory":
0x00000000-0x00020000 : "BR bootloader"
0x00020000-0x00040000 : "FLFS (U-Boot)"
0x00040000-0x005c0000 : "root (squashfs)"
0x005c0000-0x00800000 : "var (jffs2)"
0x00020000-0x00800000 : "Flash without bootloader"
0x00000000-0x00800000 : "Complete Flash"
Das hat wohl mit "Chip reports voltage low on erase: status 0xa8" zu tun...
Ansonsten verhält sich meine Sagem unauffällig...
Kann jemand helfen?

Danke und Gruß bellum
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

ob sich das Flash noch im Commandmodus befindet :gruebel:
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Beitrag von bellum »

Houdini hat geschrieben:ob sich das Flash noch im Commandmodus befindet :gruebel:
Danke, das bedeutet genau? Habe ich ein Hardware Problem?

Gruß bellum
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Nein, setz die Mountoptionen anders dann kannst du den Fehler beheben.
Der Flash der Sagem ist zu langsam für die Optionen die du im startscript ausführst.

Ps: Kann man im Netz bei fast allen Images für Sagem beobachten.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Ich sehe das nur, wenn das /var/ nicht ordentlich unmounted wurde (z.B. weil ich, per telnet eingeloggt und in /var befindend, "reboot" eingegeben habe). Dann kommt das einmal beim nächsten reboot, aber danach auch wieder nicht mehr.

Schau also mal, ob du beim Runterfahren Fehlermeldungen vom unmounten des /var bekommst.

Ich habe das gelöst, in dem ich in /etc/init.d/halt ein "umount -l /var" (Lazy unmount, unmounted auch, wenn noch Dateien offen sind) eingefügt habe. Alternativ könnte man wohl auch readoly remounten.
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Der Fehler kommt auch schon beim ersten start, nur noch nicht mit so vielen eraseblock Fehlern.
Vermutung: Squashfs entpackt noch während /var/ schon gemounted wird, bin mir da nicht so ganz sicher. *g
Bei den 2xBoxen tritt das wohl nicht auf weil die es schneller hinbekommen.

Ps: Ich habe das gelöst in dem ich /var/ als letztes mounte. Wenn das im Image nicht reicht, ein sleep vorsetzen das hilft in jedem Fall.
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Beitrag von bellum »

Danke für die Tipps!

Hatte tatsächlich eine Fehlermeldung beim unmounten von /var, die ich aber mit "umount -l /var" wegbekommen habe.

Leider besteht der Fehler immer noch. Was mir noch nicht ganz klar ist, wie ich das mounten von /var lang genug verzögern kann. Ein sleep hat noch nicht geholfen...
Dezeit sehen meine Scripte so aus:

Code: Alles auswählen

rcS
[..]

# If appropriate, load ide drivers and file system drivers
if [ $KMINOR -ge 6 ]; then
	# kernel 2.6
	if [ -e /lib/modules/$(uname -r)/extra/ide/dboxide.ko ] ; then
		$IM $MD/dboxide.o
	fi
else
	# kernel 2.4
	if [ -e /lib/modules/$(uname -r)/misc/dboxide.o ] ; then
		$IM $MD/ide-core.o
		$IM $MD/dboxide.o
		$IM $MD/ide-detect.o
		$IM $MD/ide-disk.o
		$IM $MD/ext2.o
		$IM $MD/ext3.o
		$IM $MD/xfs.o
	fi
fi

sleep 30

# Mount file systems in /etc/fstab
mount -a

# Turn on swap
if [ -e /var/etc/.swap ]; then
	swapon -a
fi

[..]

Code: Alles auswählen

fstab

proc	/proc		proc	defaults	0 0
tmpfs	/tmp		tmpfs	defaults	0 0
sysfs	/sys		sysfs	noauto		0 0
devpts  /dev/pts	devpts	noauto		0 0
/dev/ide/host0/bus0/target0/lun0/part1 swap swap noauto 0 0
/dev/mtdblock/3     /var     jffs2     defaults     0 0
#/dev/ide/host0/bus0/target0/lun0/part2 /hdd xfs defaults 1 2

Code: Alles auswählen

halt
#!/bin/sh

echo
echo "Unmounting /var"
mount | grep /var && umount -l /var
sleep 1
echo
echo "Remaining mounted filesystems:"
mount
echo

switch -fnc 0 -fblk 0 > /dev/null
Danke und Gruß bellum
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

bellum hat geschrieben:Danke für die Tipps!

Hatte tatsächlich eine Fehlermeldung beim unmounten von /var, die ich aber mit "umount -l /var" wegbekommen habe.

Leider besteht der Fehler immer noch. Was mir noch nicht ganz klar ist, wie ich das mounten von /var lang genug verzögern kann. Ein sleep hat noch nicht geholfen...
Dezeit sehen meine Scripte so aus:

Code: Alles auswählen

fstab

proc	/proc		proc	defaults	0 0
tmpfs	/tmp		tmpfs	defaults	0 0
sysfs	/sys		sysfs	noauto		0 0
devpts  /dev/pts	devpts	noauto		0 0
/dev/ide/host0/bus0/target0/lun0/part1 swap swap noauto 0 0
sleep 3
/dev/mtdblock/3     /var     jffs2     defaults     0 0
#/dev/ide/host0/bus0/target0/lun0/part2 /hdd xfs defaults 1 2
Danke und Gruß bellum
Ich habe die ganze Sache bißchen anders, mounte die Sachen einzeln über die rcS.
Mach mal ein sleep dazwischen oder setze tmpfs mal an anderer Stelle.
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Beitrag von bellum »

habs mal mit einem sleep 10 versucht (siehe unten), hat aber leider nichts geholfen :(

Code: Alles auswählen

rcS 
[..]

# If appropriate, load ide drivers and file system drivers
if [ $KMINOR -ge 6 ]; then
	# kernel 2.6
	if [ -e /lib/modules/$(uname -r)/extra/ide/dboxide.ko ] ; then
		$IM $MD/dboxide.o
	fi
else
	# kernel 2.4
	if [ -e /lib/modules/$(uname -r)/misc/dboxide.o ] ; then
		$IM $MD/ide-core.o
		$IM $MD/dboxide.o
		$IM $MD/ide-detect.o
		$IM $MD/ide-disk.o
		$IM $MD/ext2.o
		$IM $MD/ext3.o
		$IM $MD/xfs.o
	fi
fi

# Mount file systems in /etc/fstab
mount -a

sleep 10
echo Mounting /var ...
mount -t jffs2 /dev/mtdblock/3 /var

# Turn on swap
if [ -e /var/etc/.swap ]; then
	swapon -a
fi

[..]

Code: Alles auswählen

fstab

proc	/proc		proc	defaults	0 0
tmpfs	/tmp		tmpfs	defaults	0 0
sysfs	/sys		sysfs	noauto		0 0
devpts  /dev/pts	devpts	noauto		0 0
/dev/ide/host0/bus0/target0/lun0/part1 swap swap noauto 0 0
#/dev/mtdblock/3     /var     jffs2     defaults     0 0
#/dev/ide/host0/bus0/target0/lun0/part2 /hdd xfs defaults 1 2
Ich glaube inzwischen, dass es weniger an den Startscripten sondern an dem liegt.

Code: Alles auswählen

Chip reports voltage low on erase: status 0xa8 
Erase at 0x001e0000 failed immediately: errno -5
Dabei handelt es sich ja auch um die gleiche Adresse die vom jffs2 angemeckert wird. Diese Meldung kommt inzwischen auch beim ersten Start nach dem Flashen und wird von cdk/linux-2.4.34/drivers/mtd/chips/cfi_cmdset_0001.c bzw. cfi_cmdset_0020.c erzeugt...

Hat evtl. die Hardware-Fraktion eine Idee?

Danke und Gruß bellum
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Ich kenne mich mit der Hardware nicht aus, aber das riecht schon fast nach defektem Flash :-(

Die angegebene Adresse ist vermutlich relativ zum Start der Partition, also bei 0x005c0000+0x001e0000=0x007A0000

Das ist einer der letzten Blöcke im Flash, 384k vor dem Ende. Da könntest du nun mit kreativem Partitionieren dafür sorgen, daß der einfach nicht mehr benutzt wird... Evtl. ist es auch einfach egal, vielleicht blendet jffs2 den block einfach aus und benutzt ihn nicht, wenn es merkt, daß er kaputt ist; keine Ahnung...
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Beitrag von bellum »

seife hat geschrieben:Ich kenne mich mit der Hardware nicht aus, aber das riecht schon fast nach defektem Flash :-(

Die angegebene Adresse ist vermutlich relativ zum Start der Partition, also bei 0x005c0000+0x001e0000=0x007A0000

Das ist einer der letzten Blöcke im Flash, 384k vor dem Ende. Da könntest du nun mit kreativem Partitionieren dafür sorgen, daß der einfach nicht mehr benutzt wird... Evtl. ist es auch einfach egal, vielleicht blendet jffs2 den block einfach aus und benutzt ihn nicht, wenn es merkt, daß er kaputt ist; keine Ahnung...
Hi Seife,
ich denke auch, dass irgendetwas mit dem Flash nicht in Ordnung ist. Aber solange die Box rennt ist ja gut...
Das mit der relativen Adressierung ist ein guter Tipp und macht auch Sinn.
Werde jetzt erst einmal abwarten.

Danke und Gruß bellum
bellum
bbs-Maintainer
Beiträge: 282
Registriert: Montag 23. Oktober 2006, 22:13

Beitrag von bellum »

bellum hat geschrieben:Hi Seife,
ich denke auch, dass irgendetwas mit dem Flash nicht in Ordnung ist. Aber solange die Box rennt ist ja gut...
Das mit der relativen Adressierung ist ein guter Tipp und macht auch Sinn.
Werde jetzt erst einmal abwarten.

Danke und Gruß bellum
Noch eine kleine Anmerkung zu diesem Thema...
Seitdem ich Images mit neueren CVS-Ständen (ab Oktober 2007 vorher Mai 2007) baue, tritt der Fehler nicht mehr auf, ohne dass ich darüber gehend hinaus etwas geändert hätte...
Seltsam, seltsam... :gruebel:

Gruß bellum
niemand0815
Interessierter
Interessierter
Beiträge: 47
Registriert: Dienstag 24. September 2002, 20:28

Beitrag von niemand0815 »

gibt es dazu schon neue infos?

ich hab ähnliches beim flashen aktueller images gesehen:

voltage meldung kam nach dem flashen.
danach bei jedem reboot die mask-meldungen, aber nach jedem boot weniger.
nach 3-4 boots waren diese weg.
das jffs2 hatte nach dem flashen 500kb mehr belegt als nach dem 3.boot.

bei einem erneuten flashen geht das ganze wieder von vorne los.

beim flashen älterer images kommen diese meldungen nicht.