facebook/flashcache — Issue #53: 2.6.16/2.6.18 kernel compile error "ioctl"
Author: GetGlueJohn
Created: 2012-02-17 22:27:49+00:00
State: open

Trying to get compile going on kernel 2.6.16 & 2.6.18 x86_64 w/ xen on EC2, but getting the same error, please see snippet:

ln -s -f /usr/src/kernels/2.6.18-xenU-ec2-v1.5-x86_64/Module.symvers /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18-xenU-ec2-v1.5.x86_64/Module.symvers
make -C /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18-xenU-ec2-v1.5.x86_64 M=/tmp/flashcache/src modules V=0
make[2]: Entering directory `/usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18-xenU-ec2-v1.5.x86_64'
CC [M] /tmp/flashcache/src/flashcache_conf.o
/tmp/flashcache/src/flashcache_conf.c: In function ‘flashcache_writeback_md_store’:
/tmp/flashcache/src/flashcache_conf.c:242: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:263: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:315: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c: In function ‘flashcache_writethrough_create’:
/tmp/flashcache/src/flashcache_conf.c:354: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:354: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 3 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:360: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:360: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 4 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:360: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 5 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c: In function ‘flashcache_writeback_create’:
/tmp/flashcache/src/flashcache_conf.c:411: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:436: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:436: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 3 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:443: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:443: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 4 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:443: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 5 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:501: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:525: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:561: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c: In function ‘flashcache_writeback_load’:
/tmp/flashcache/src/flashcache_conf.c:603: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:654: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:654: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 4 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:654: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 5 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:690: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:787: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 2 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c: In function ‘flashcache_ctr’:
/tmp/flashcache/src/flashcache_conf.c:962: warning: format ‘%lu’ expects type ‘long unsigned int *’, but argument 3 has type ‘sector_t *’
/tmp/flashcache/src/flashcache_conf.c: In function ‘flashcache_dtr_stats_print’:
/tmp/flashcache/src/flashcache_conf.c:1273: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 6 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:1273: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 11 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c: In function ‘flashcache_status_table’:
/tmp/flashcache/src/flashcache_conf.c:1479: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 4 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:1484: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 4 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c:1490: warning: format ‘%lu’ expects type ‘long unsigned int’, but argument 4 has type ‘sector_t’
/tmp/flashcache/src/flashcache_conf.c: At top level:
/tmp/flashcache/src/flashcache_conf.c:1535: error: unknown field ‘ioctl’ specified in initializer
/tmp/flashcache/src/flashcache_conf.c:1535: warning: initialization from incompatible pointer type
make[3]: *** [/tmp/flashcache/src/flashcache_conf.o] Error 1
make[2]: *** [_module_/tmp/flashcache/src] Error 2
make[2]: Leaving directory `/usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18-xenU-ec2-v1.5.x86_64'
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/tmp/flashcache/src'
make: *** [all] Error 2

This doesn't seem to be related to the changing ioctl function since it's still w/ older version of 2.6, what am I missing?

John