Nick Dokos wrote: > Hi Ted, > > I got this error when trying to build the pu branch of e2fsprogs: > > ,---- > | ... > | CC ../../misc/e4defrag.c > | ../../misc/e4defrag.c:326:2: warning: #warning Using locally defined fallocate syscall interface. > | ../../misc/e4defrag.c: In function ‘file_frag_count’: > | ../../misc/e4defrag.c:627: error: ‘FS_IOC_FIEMAP’ undeclared (first use in this function) > | ../../misc/e4defrag.c:627: error: (Each undeclared identifier is reported only once > | ../../misc/e4defrag.c:627: error: for each function it appears in.) > | ../../misc/e4defrag.c: In function ‘get_file_extents’: > | ../../misc/e4defrag.c:940: error: ‘FS_IOC_FIEMAP’ undeclared (first use in this function) > | make[2]: *** [e4defrag.o] Error 1 > | make[2]: Leaving directory `/home/nick/src/e2fsprogs/build/misc' > | make[1]: *** [all-progs-recursive] Error 1 > | make[1]: Leaving directory `/home/nick/src/e2fsprogs/build' > | make: *** [all] Error 2 > | nick@shifter:~/src/e2fsprogs/build$ uname -r > | 2.6.31-rc6 > `---- > > Currently, the #define is in filefrag.c: > > ,---- > | nick@shifter:~/src/e2fsprogs$ find . -type f | xargs grep FS_IOC > | ./misc/filefrag.c:#define FS_IOC_FIEMAP _IOWR('f', 11, struct fiemap) > | ./misc/filefrag.c: rc = ioctl(fd, FS_IOC_FIEMAP, (unsigned long) fiemap); > | ./misc/e4defrag.c:/* The following macro is used for ioctl FS_IOC_FIEMAP > | ./misc/e4defrag.c: ret = ioctl(fd, FS_IOC_FIEMAP, &fiemap_buf); > | ./misc/e4defrag.c: ret = ioctl(fd, FS_IOC_FIEMAP, fiemap_buf); > | ./lib/ext2fs/fiemap.h: * FS_IOC_FIEMAP ioctl infrastructure. > `---- > > I moved it from there to lib/ext2fs/fiemap.h and that fixes it. I guess that's my fault due to http://git.kernel.org/?p=fs/ext2/e2fsprogs.git;a=commitdiff;h=4f1d0e8608ddf488316dffbe4cd9993bf3b22084 Would it be better to move the ioctl definition into one place, maybe our local copy of fiemap.h? -Eric -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html