tux3 doesn't compile on 3.2.0

OGAWA Hirofumi hirofumi at mail.parknet.co.jp
Fri Jan 4 15:08:43 PST 2013


Prashant Shah <pshah.mumbai at gmail.com> writes:

> Hi,
>
> Had to include this header in tux3.h
> #include <linux/slab.h>
>
> Even after that I get these error :

Hi,

Yes. Current tux3/user/kernel is for 3.6.6. There were some changes of
interface in kernel core between 3.2.0 and 3.6.6.

Thanks.

> make -C /lib/modules/`uname -r`/build/ M=`pwd` CONFIG_TUX3=m modules
> make[1]: Entering directory `/usr/src/linux-headers-3.2.0-23-generic'
>   CC [M]  /home/prashants/temp/tux3/user/kernel/filemap.o
> /home/prashants/temp/tux3/user/kernel/filemap.c: In function
> ‘tux3_da_write_begin’:
> /home/prashants/temp/tux3/user/kernel/filemap.c:557:6: error: passing
> argument 1 of ‘block_write_begin’ from incompatible pointer type
> [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘struct
> address_space *’ but argument is of type ‘struct file *’
> /home/prashants/temp/tux3/user/kernel/filemap.c:557:6: error: passing
> argument 2 of ‘block_write_begin’ makes integer from pointer without a
> cast [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘loff_t’ but
> argument is of type ‘struct address_space *’
> /home/prashants/temp/tux3/user/kernel/filemap.c:557:6: error: passing
> argument 5 of ‘block_write_begin’ makes pointer from integer without a
> cast [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘struct page **’ but
> argument is of type ‘unsigned int’
> /home/prashants/temp/tux3/user/kernel/filemap.c:557:6: error: passing
> argument 6 of ‘block_write_begin’ from incompatible pointer type
> [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘int (*)(struct
> inode *, sector_t,  struct buffer_head *, int)’ but argument is of
> type ‘struct page **’
> /home/prashants/temp/tux3/user/kernel/filemap.c:557:6: error: too many
> arguments to function ‘block_write_begin’
> include/linux/buffer_head.h:204:5: note: declared here
> /home/prashants/temp/tux3/user/kernel/filemap.c: In function ‘tux3_direct_IO’:
> /home/prashants/temp/tux3/user/kernel/filemap.c:585:7: error: passing
> argument 4 of ‘blockdev_direct_IO’ from incompatible pointer type
> [-Werror]
> include/linux/fs.h:2491:23: note: expected ‘const struct iovec *’ but
> argument is of type ‘struct block_device *’
> /home/prashants/temp/tux3/user/kernel/filemap.c:585:7: error: passing
> argument 5 of ‘blockdev_direct_IO’ makes integer from pointer without
> a cast [-Werror]
> include/linux/fs.h:2491:23: note: expected ‘loff_t’ but argument is of
> type ‘const struct iovec *’
> /home/prashants/temp/tux3/user/kernel/filemap.c:585:7: error: passing
> argument 7 of ‘blockdev_direct_IO’ makes pointer from integer without
> a cast [-Werror]
> include/linux/fs.h:2491:23: note: expected ‘int (*)(struct inode *,
> sector_t,  struct buffer_head *, int)’ but argument is of type ‘long
> unsigned int’
> /home/prashants/temp/tux3/user/kernel/filemap.c:585:7: error: too many
> arguments to function ‘blockdev_direct_IO’
> include/linux/fs.h:2491:23: note: declared here
> /home/prashants/temp/tux3/user/kernel/filemap.c: At top level:
> /home/prashants/temp/tux3/user/kernel/filemap.c:604:2: error: unknown
> field ‘sync_page’ specified in initializer
> /home/prashants/temp/tux3/user/kernel/filemap.c:604:16: error:
> ‘block_sync_page’ undeclared here (not in a function)
> /home/prashants/temp/tux3/user/kernel/filemap.c:629:2: error: unknown
> field ‘sync_page’ specified in initializer
> /home/prashants/temp/tux3/user/kernel/filemap.c: In function
> ‘tux3_vol_write_begin’:
> /home/prashants/temp/tux3/user/kernel/filemap.c:662:6: error: passing
> argument 1 of ‘block_write_begin’ from incompatible pointer type
> [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘struct
> address_space *’ but argument is of type ‘struct file *’
> /home/prashants/temp/tux3/user/kernel/filemap.c:662:6: error: passing
> argument 2 of ‘block_write_begin’ makes integer from pointer without a
> cast [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘loff_t’ but
> argument is of type ‘struct address_space *’
> /home/prashants/temp/tux3/user/kernel/filemap.c:662:6: error: passing
> argument 5 of ‘block_write_begin’ makes pointer from integer without a
> cast [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘struct page **’ but
> argument is of type ‘unsigned int’
> /home/prashants/temp/tux3/user/kernel/filemap.c:662:6: error: passing
> argument 6 of ‘block_write_begin’ from incompatible pointer type
> [-Werror]
> include/linux/buffer_head.h:204:5: note: expected ‘int (*)(struct
> inode *, sector_t,  struct buffer_head *, int)’ but argument is of
> type ‘struct page **’
> /home/prashants/temp/tux3/user/kernel/filemap.c:662:6: error: too many
> arguments to function ‘block_write_begin’
> include/linux/buffer_head.h:204:5: note: declared here
> /home/prashants/temp/tux3/user/kernel/filemap.c: At top level:
> /home/prashants/temp/tux3/user/kernel/filemap.c:668:2: error: unknown
> field ‘sync_page’ specified in initializer
> cc1: all warnings being treated as errors
>
> _______________________________________________
> Tux3 mailing list
> Tux3 at phunq.net
> http://phunq.net/mailman/listinfo/tux3

-- 
OGAWA Hirofumi <hirofumi at mail.parknet.co.jp>




More information about the Tux3 mailing list