On Sunday 03 October 2010 15:27:22 Andre Renaud wrote: > Hi, > We're trying to build yaffs against a 2.6.32 Linux kernel, and are > having a number of issues using the latest GIT checkout. > > fs/yaffs2/yaffs_vfs_glue.c:211: warning: initialization from > incompatible pointer type > fs/yaffs2/yaffs_vfs_glue.c:264: warning: initialization from > incompatible pointer type > fs/yaffs2/yaffs_vfs_glue.c:274: error: unknown field 'evict_inode' > specified in initializer > fs/yaffs2/yaffs_vfs_glue.c:274: warning: initialization from > incompatible pointer type > fs/yaffs2/yaffs_vfs_glue.c: In function 'yaffs_vfs_setattr': > fs/yaffs2/yaffs_vfs_glue.c:282: error: implicit declaration of function > 'setattr_copy' > fs/yaffs2/yaffs_vfs_glue.c: In function 'yaffs_vfs_setsize': > fs/yaffs2/yaffs_vfs_glue.c:288: error: implicit declaration of function > 'truncate_setsize' > fs/yaffs2/yaffs_vfs_glue.c: In function 'yaffs_evict_inode': > fs/yaffs2/yaffs_vfs_glue.c:652: error: implicit declaration of function > 'end_writeback' > make[2]: *** [fs/yaffs2/yaffs_vfs_glue.o] Error 1 > make[2]: *** Waiting for unfinished jobs.... > > I see that yaffs_sync_object seems to have changed prototype, which is > easy to sort out. But I'm also getting issues about evict_inode, and an > undefined function 'end_writeback'. > > Have I perhaps retrieved the wrong version? > > Regards, > Andre Andre I just built against the linux 2.6.32 kernel and had no problems. Does it look like you're using the single or multi-version variant of yaffs_vfs.c? You need to be using the multi-version variant since you are not compiling against the latest kernel (2.6.36). The single-version variant is kept current with Linus' 2.6 git and will not compile against older kernelss. The yaffs patch-ker.sh script changed. How did you call it? Try doing this: 1. get latest yaffs2 git 2. cd yaffs2-dir 3. rm -rf kernel-dir/fs/yaffs2 4. ./patch-ker.sh l m kernel-dir -- Charles