[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Another stange [ garbage collector? ] problem




Hi all,

	I found another strange behavior of JFFS2 on my machine.  Here is
what happens: 
1- I erase my flash chip, mount an empty JFFS2 on it and copy a large file
to it.
2- I power-down my machine, with or without unmounting JFFS2 first, it does
not matter.
3- I reboot, mount JFFS2 and erase the large file I copyed at first.  
4- I try to copy it back on JFFS2, but the cp command never completes.  

	So I spinkled my chip driver's erase function with printk's just to
know which sector is erased and when it is.  Without printing any errors, it
seems that cp command spins around copying the same data, because I get
printouts telling me that the same sectors are erased continuously.


Here is a part of what outputs on my terminal:

[root@xxxxxxx.55 /jffs2]# rm *
[root@xxxxxxx.
Now erasing sector at offset: 110000
Now erasing sector at offset: 100000
Now erasing sector at offset: A0000
Now erasing sector at offset: 80000
Now erasing sector at offset: 60000
Now erasing sector at offset: 50000
Now erasing sector at offset: 40000
Now erasing sector at offset: 30000
Now erasing sector at offset: 20000
Now erasing sector at offset: 70000
Now erasing sector at offset: 0
Now erasing sector at offset: 140000
Now erasing sector at offset: 110000
Now erasing sector at offset: 100000
Now erasing sector at offset: A0000
Now erasing sector at offset: 80000
Now erasing sector at offset: 10000
Now erasing sector at offset: 60000
Now erasing sector at offset: 50000
Now erasing sector at offset: 40000
Now erasing sector at offset: 30000
Now erasing sector at offset: 20000
Now erasing sector at offset: 70000
Now erasing sector at offset: 0
...


Since cp never terminates, I kill it.  Even after the cp process has been
killed, I am still getting sector erase printouts, up to the moment where I
unmount JFFS2.  At this moment, I get: 

VFS: Busy inodes after unmount. Self-destruct in 5 seconds.  Have a nice
day...
mtdblock_release
atmel_0001_sync called
ok
[root@xxxxxxx.55 /]# Calculated used size 00000a14 != stored used size
0000ad94
kernel BUG at nodemgmt.c:269!
Oops: Kernel Mode Software FPU Emulation, sig: 8
NIP: C00808BC XER: C000F821 LR: C00808BC SP: C0C33D30 REGS: c0c33c80 TRAP:
1000
MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
TASK = c0c32000[38] 'jffs2_gcd_mtd0' Last syscall: -1
last math 00000000 last altivec 00000000
GPR00: C00808BC C0C33D30 C0C32000 0000001E 00001032 00000001 0000000D
00000000
GPR08: C01DF060 C00046A0 FF002830 C0C33C80 FF000000 100B861C 100CA3D0
00000000
GPR16: 7FFFFC4C 7FFFFC48 C0A22000 C0C33DA8 C019D880 000BC000 C01CDAB0
00000000
GPR24: C0C0F5A0 C01CDAB0 0010A380 00000000 C0C3CC10 0000526C C01CDAB0
C0D67280
Call backtrace:
C00808BC C0082A90 C0085AB8 C0084AD8 C0087204 C0004D0C



I don't know if I did something wrong, but there is definitely something
going wrong! Does anyone have a clue about it?

Thanks!


Frédéric Giasson




To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo@xxxxxxx.com