[Yaffs] yaffs_guts question

トップ ページ
添付ファイル:
Eメールのメッセージ
+ (text/plain)
このメッセージを削除
このメッセージに返信
著者: Rick Bronson
日付:  
To: yaffs
題目: [Yaffs] yaffs_guts question
Hi,

Is it true that everywhere the parent->variantType is set to
YAFFS_OBJECT_TYPE_DIRECTORY that the INIT_LIST_HEAD should be called
on variant.directoryVariant.children?

I have an issue where parent->variantType is being set to
YAFFS_OBJECT_TYPE_DIRECTORY but the
variant.directoryVariant.children.next is never set so it
ends up crashing at

------------------------------------------------------------------
/* Now add it */
list_add(&obj->siblings, &directory->variant.directoryVariant.children);
------------------------------------------------------------------

inside yaffs_AddObjectToDirectory()

The variantType is being set to YAFFS_OBJECT_TYPE_DIRECTORY here:
------------------------------------------------------------------
/* we need to load this info */

in->valid = 1;
in->variantType = oh->type;
------------------------------------------------------------------

Thanks very much for any guidance.

Rick Bronson


------------------------------------------------------------------
Here are my Linux 2.6.22 specifics:

yaffs2 version:

yaffs2-ian-20070523.tgz

NAND chip (512/16):

Flash chip found:                                                               
         Manufacturer ID: 0x98, Chip ID: 0x75 (Toshiba TC58256FT/DC)            
1 flash chips found. Total nand_chip size: 32 MB                                


kernel:

Linux acq 2.6.22-rc1 #170 Thu Jul 5 13:58:14 PDT 2007 armv4tl GNU/Linux

.config file:

CONFIG_YAFFS_FS=y
CONFIG_YAFFS_YAFFS1=y
CONFIG_YAFFS_9BYTE_TAGS=y
CONFIG_YAFFS_YAFFS2=y
CONFIG_YAFFS_AUTO_YAFFS2=y
# CONFIG_YAFFS_DISABLE_LAZY_LOAD is not set
CONFIG_YAFFS_CHECKPOINT_RESERVED_BLOCKS=10
# CONFIG_YAFFS_DISABLE_WIDE_TNODES is not set
# CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED is not set