Skip to contentSkip to conversation

Squashfs updates for 2.6.35

GIT PULL New Phillip Lougher 3 participants 4 messages May 26, 2010 – Jun 1, 2010 SquashFS file system

lore
Share & tools
lore
#0 lore raw

Hi Linus,

Please consider pulling the following Squashfs updates which add file system support for extended attributes.

Thanks

Phillip

----------
The following changes since commit b57f95a38233a2e73b679bea4a5453a1cc2a1cc9:
Linus Torvalds (1):

        Linux 2.6.34-rc7

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus.git master

Phillip Lougher (7):
squashfs: add xattr id support
squashfs: add support for xattr reading
squashfs: add new extended inode types
squashfs: add xattr support configure option
squashfs: constify xattr handlers
squashfs: fix name reading in squashfs_xattr_get
squashfs: update documentation to include description of xattr layout

Stephen Hemminger (2):
squashfs: xattr_lookup sparse fix
squashfs: xattr fix sparse warnings

 Documentation/filesystems/squashfs.txt |   32 +++-
 fs/squashfs/Kconfig                    |   11 +
 fs/squashfs/Makefile                   |    2 +
 fs/squashfs/inode.c                    |   92 +++++++++-
 fs/squashfs/namei.c                    |    6 +-
 fs/squashfs/squashfs.h                 |   12 +-
 fs/squashfs/squashfs_fs.h              |   76 ++++++++-
 fs/squashfs/squashfs_fs_i.h            |    3 +
 fs/squashfs/squashfs_fs_sb.h           |    3 +
 fs/squashfs/super.c                    |   30 ++-
 fs/squashfs/symlink.c                  |   11 +
 fs/squashfs/xattr.c                    |  323 ++++++++++++++++++++++++++++++++
 fs/squashfs/xattr.h                    |   46 +++++
 fs/squashfs/xattr_id.c                 |  100 ++++++++++
 14 files changed, 723 insertions(+), 24 deletions(-)
 create mode 100644 fs/squashfs/xattr.c
 create mode 100644 fs/squashfs/xattr.h
 create mode 100644 fs/squashfs/xattr_id.c
#1 lore raw
Quoted 2 lines · Phillip Lougher

Stephen Hemminger (2):
     squashfs: xattr fix sparse warnings

Interestingly, this one introduced a new compiler warning:

fs/squashfs/xattr.c:37: warning: ‘squashfs_xattr_handler’ declared inline after being called
fs/squashfs/xattr.c:37: warning: previous declaration of ‘squashfs_xattr_handler’ was here

as the actual function is still marked inline at line 298.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

#2 lore raw

PATCH 1/2 squashfs: xattr_handler don't inline

Don't need to explicitly inline this function, it causes a sparse warning; and GCC will inline it already.

---
Patch against 2.6.35-rc1

fs/squashfs/xattr.c +1 -1
@@ -295,7 +295,7 @@ static const struct xattr_handler squash
 	.get	= squashfs_security_get
 };
 
-static inline const struct xattr_handler *squashfs_xattr_handler(int type)
+static const struct xattr_handler *squashfs_xattr_handler(int type)
 {
 	if (type & ~(SQUASHFS_XATTR_PREFIX_MASK | SQUASHFS_XATTR_VALUE_OOL))
 		/* ignore unrecognised type */
#3 lore raw

PATCH 2/2 squashfs: fix unsigned warnings

The xattr_size is passed to xattr_lookup as a signed integer, when it is unsigned. Also include xattr.h to get function prototype.

fs/squashfs/xattr.h +2 -2
@@ -25,7 +25,7 @@
 extern __le64 *squashfs_read_xattr_id_table(struct super_block *, u64,
 		u64 *, int *);
 extern int squashfs_xattr_lookup(struct super_block *, unsigned int, int *,
-		int *, unsigned long long *);
+		unsigned int *, unsigned long long *);
 #else
 static inline __le64 *squashfs_read_xattr_id_table(struct super_block *sb,
 		u64 start, u64 *xattr_table_start, int *xattr_ids)
@@ -35,7 +35,7 @@ static inline __le64 *squashfs_read_xatt
 }
 
 static inline int squashfs_xattr_lookup(struct super_block *sb,
-		unsigned int index, int *count, int *size,
+		unsigned int index, int *count, unsigned int *size,
 		unsigned long long *xattr)
 {
 	return 0;
fs/squashfs/xattr_id.c +1 -0
@@ -34,6 +34,7 @@
 #include "squashfs_fs_sb.h"
 #include "squashfs_fs_i.h"
 #include "squashfs.h"
+#include "xattr.h"
 
 /*
  * Map xattr id using the xattr id look up table