Author: Charles Manning Date: To: yaffs Subject: Re: [Yaffs] Build issues using latest GIT & 2.6.32
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