Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

squashfs: xattr_lookup sparse fix

Sparse detected that unsigned pointer was being passed as int pointer.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
[fixed up to deal with code refactoring]
Signed-off-by: Phillip Lougher <phillip@lougher.demon.co.uk>

authored by

Stephen Hemminger and committed by
Phillip Lougher
aa5b1894 01e5b4e4

+4 -3
+3 -2
fs/squashfs/xattr.h
··· 25 25 extern __le64 *squashfs_read_xattr_id_table(struct super_block *, u64, 26 26 u64 *, int *); 27 27 extern int squashfs_xattr_lookup(struct super_block *, unsigned int, int *, 28 - int *, long long *); 28 + int *, unsigned long long *); 29 29 #else 30 30 static inline __le64 *squashfs_read_xattr_id_table(struct super_block *sb, 31 31 u64 start, u64 *xattr_table_start, int *xattr_ids) ··· 35 35 } 36 36 37 37 static inline int squashfs_xattr_lookup(struct super_block *sb, 38 - unsigned int index, int *count, int *size, long long *xattr) 38 + unsigned int index, int *count, int *size, 39 + unsigned long long *xattr) 39 40 { 40 41 return 0; 41 42 }
+1 -1
fs/squashfs/xattr_id.c
··· 39 39 * Map xattr id using the xattr id look up table 40 40 */ 41 41 int squashfs_xattr_lookup(struct super_block *sb, unsigned int index, 42 - int *count, int *size, long long *xattr) 42 + int *count, unsigned int *size, unsigned long long *xattr) 43 43 { 44 44 struct squashfs_sb_info *msblk = sb->s_fs_info; 45 45 int block = SQUASHFS_XATTR_BLOCK(index);