it works, thank you;

2010/8/9 Charles Manning <manningc2@actrix.gen.nz>
Hello

I have been sent the attached patch (attached)

I have been struggling to get my test board up and running 2.6.34 and will
test it as soon as I can.

In the mean time others can test this and see if it fixes the problem.


-- Charles

On Monday 09 August 2010 15:11:34 fs p wrote:
> kernel 2.6.34  ; yaffs_guts.c,v 1.79 2009/03/05 01:45:28
> VFS not found the symbol link on  yaffs2 file system
>
> #cd /mnt/bin
> #ln -s busybox sl2bbx
> #./sl2bbx
> -sh: ./sl2bbx: not found
> #cd /usr/sbin
> #ln -s nanddump sl2ndmp
> #./sl2ndmp
> -sh: ./sl2ndmp: not found
>
> turn on os trace:
>
> # cd /mnt/bin
> # ./sl2bbx
> [ 1064.080000] yaffs locking
> [ 1064.080000] yaffs locked
> [ 1064.080000] yaffs_lookup for 261:sl2bbx
> [ 1064.080000] yaffs unlocking
> [ 1064.090000] yaffs_lookup found 590
> [ 1064.090000] yaffs_get_inode for object 590
> [ 1064.090000] yaffs_iget for 590
> [ 1064.100000] yaffs locking
> [ 1064.100000] yaffs locked
> [ 1064.100000] yaffs_FillInode mode a1ff uid 0 gid 0 size 7 count 1
> [ 1064.110000] yaffs unlocking
> [ 1064.110000] yaffs_loookup dentry
> [ 1064.120000] yaffs locking
> [ 1064.120000] yaffs locked
> [ 1064.120000] yaffs unlocking
> [ 1064.130000] yaffs locking
> [ 1064.130000] yaffs locked
> [ 1064.130000] yaffs_lookup for 261:`q@sbox                   //fisrt 4 byte is wrong
> , right is busybox
> [ 1064.140000] yaffs unlocking
> [ 1064.140000] yaffs_lookup not found
> -sh: ./sl2bbx: not found
>
> in yaffs_follow_link:
>
>     alias = yaffs_GetSymlinkAlias(yaffs_DentryToObject(dentry));    //
> alias  value is busybox
>
>     kfree(alias);     //-----NOTE here ,after free alias, now the memory
> hold alias is    `q@sbox
>
>
> return form yaffs_follow_link ,back to VFS ,and finally goto yaffs_lookup:
>
> in  yaffs_lookup:
>
>       T(YAFFS_TRACE_OS,
>         ( "yaffs_lookup for %d:%s\n",
>          yaffs_InodeToObject(dir)->objectId, dentry->d_name.name));
>
>
>       } else {
>               T(YAFFS_TRACE_OS, ( "yaffs_lookup not found\n"));
>
>       }
>
>       //------NOTE HERE dentry->d_name.name is `q@sbox ,so we canot get the
> real yaffs object(which should be busybox)
>
>
>
>
> I think this is a problem of yaffs_follw_link,  is there somebody else
> get the same result?
> Charles  can you give some tip?
>
> _______________________________________________
> yaffs mailing list
> yaffs@lists.aleph1.co.uk
> http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs