Hi,
Using latest code from git://git.kernel.org/pub/scm/linux/kernel/git/
josh/sparse.git
When I run: make CHECKFLAGS="-D__CHECK_ENDIAN__" C=2 modules
I get this warning:
CHECK fs/ntfs/file.c
fs/ntfs/file.c:2241:5: warning: incorrect type in argument 8
(different signedness)
fs/ntfs/file.c:2241:5: expected int [signed] ( [signed] [usertype]
get_block )( ... )
fs/ntfs/file.c:2241:5: got int [signed] ( static [toplevel]
*<noident> )( ... )
The relevant code to reproduce this is:
From <include/linux/fs.h>:
typedef int (get_block_t)(struct inode *inode, sector_t iblock,
struct buffer_head *bh_result, int create);
static inline ssize_t blockdev_direct_IO(int rw, struct kiocb *iocb,
struct inode *inode, struct block_device *bdev, const struct
iovec *iov,
loff_t offset, unsigned long nr_segs, get_block_t get_block,
dio_iodone_t end_io)
{
}
In my current <fs/ntfs/file.c>:
static int ntfs_get_block_for_direct_IO_write(struct inode *vi,
sector_t blk,
struct buffer_head *bh, int create)
{
}
And later (this is line 2240 from the error message):
written = blockdev_direct_IO(WRITE, iocb, vi, vi-
>i_sb->s_bdev,
iov, pos, *nr_segs,
ntfs_get_block_for_direct_IO_write,
NULL);
Why is sparse complaining? And perhaps more importantly how do I
make the warning go away?
Thanks a lot in advance!
Best regards,
Anton
--
Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer, http://www.linux-ntfs.org/
-
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html