[Yaffs] 2.6.34 yaffs_follow_link problem

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: fs p
Date:  
To: yaffs
CC: Charles Manning
Subject: [Yaffs] 2.6.34 yaffs_follow_link problem
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?