I've been trying out the latest git version of yaff2 with the 2.6.34-rc7
kernel and the system won't boot :-(
This is a previously working system when using 2.6.33 and the last CVS
yaffs release.
Primary symptom is a kernel panic "Init not found".
Scattering printks in the code I tracked it down to the first four bytes
of any symlink name (alias) becoming corrupted/overwritten with a data
pointer.
In the function yaffs_follow_link() in yaffs_fs.c the code mallocs a string
alias and passes it to vfs_follow_link() before freeing it. It looks like
something in the kernel is keeping a reference to the string and accessing
it after the free. Simple proof of this is that if you comment out the
kfree() the kernel boots but obviously has a nasty memory leek.
Code in fs/namei.c link_path_walk() looks like it might be storing a
reference to the string in nd->last.
It's now not clear to me if this is a YAFFS problem or a kernel one.
--
Bob Dunlop