Squashfs: fix use of __le64 annotated variable
authorPhillip Lougher <phillip@lougher.demon.co.uk>
Sun, 24 Oct 2010 22:13:57 +0000 (23:13 +0100)
committerPhillip Lougher <phillip@lougher.demon.co.uk>
Thu, 28 Oct 2010 16:44:11 +0000 (17:44 +0100)
This fixes a sparse with endian checking warning.

Signed-off-by: Phillip Lougher <phillip@lougher.demon.co.uk>
fs/squashfs/xattr.c

index 652b854..3876c36 100644 (file)
@@ -158,17 +158,18 @@ static int squashfs_xattr_get(struct inode *inode, int name_index,
                                        strncmp(target, name, name_size) == 0) {
                        /* found xattr */
                        if (type & SQUASHFS_XATTR_VALUE_OOL) {
-                               __le64 xattr;
+                               __le64 xattr_val;
+                               u64 xattr;
                                /* val is a reference to the real location */
                                err = squashfs_read_metadata(sb, &val, &start,
                                                &offset, sizeof(val));
                                if (err < 0)
                                        goto failed;
-                               err = squashfs_read_metadata(sb, &xattr, &start,
-                                        &offset, sizeof(xattr));
+                               err = squashfs_read_metadata(sb, &xattr_val,
+                                       &start, &offset, sizeof(xattr_val));
                                if (err < 0)
                                        goto failed;
-                               xattr = le64_to_cpu(xattr);
+                               xattr = le64_to_cpu(xattr_val);
                                start = SQUASHFS_XATTR_BLK(xattr) +
                                                        msblk->xattr_table;
                                offset = SQUASHFS_XATTR_OFFSET(xattr);