public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Jan Tulak <jtulak@redhat.com>
To: xfs@oss.sgi.com
Cc: hch@infradead.org, Jan Tulak <jtulak@redhat.com>
Subject: [PATCH 02/11] xfsprogs: avoid dependency on linux XATTR_SIZE/LIST_MAX
Date: Wed, 26 Aug 2015 14:02:26 +0200	[thread overview]
Message-ID: <1440590555-20463-2-git-send-email-jtulak@redhat.com> (raw)
In-Reply-To: <1440590555-20463-1-git-send-email-jtulak@redhat.com>

Signed-off-by: Jan Tulak <jtulak@redhat.com>
---
 libhandle/handle.c       |  6 ++++--
 libhandle/jdm.c          |  6 ++++--
 libxfs/xfs_attr_remote.c |  2 +-
 libxfs/xfs_format.h      | 11 ++++++++++-
 4 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/libhandle/handle.c b/libhandle/handle.c
index b1c0c10..d532f44 100644
--- a/libhandle/handle.c
+++ b/libhandle/handle.c
@@ -21,6 +21,8 @@
 #include "xfs.h"
 #include "handle.h"
 #include "parent.h"
+#include "xfs/xfs_arch.h"
+#include "xfs/xfs_format.h"
 
 /* just pick a value we know is more than big enough */
 #define	MAXHANSIZ	64
@@ -397,8 +399,8 @@ attr_list_by_handle(
 	alhreq.buffer = buf;
 	alhreq.buflen = bufsize;
 	/* prevent needless EINVAL from the kernel */
-	if (alhreq.buflen > XATTR_LIST_MAX)
-		alhreq.buflen = XATTR_LIST_MAX;
+	if (alhreq.buflen > XFS_XATTR_LIST_MAX)
+		alhreq.buflen = XFS_XATTR_LIST_MAX;
 
 	error = xfsctl(path, fd, XFS_IOC_ATTRLIST_BY_HANDLE, &alhreq);
 
diff --git a/libhandle/jdm.c b/libhandle/jdm.c
index d804423..db7d1fe 100644
--- a/libhandle/jdm.c
+++ b/libhandle/jdm.c
@@ -21,6 +21,8 @@
 #include "handle.h"
 #include "jdm.h"
 #include "parent.h"
+#include "xfs/xfs_arch.h"
+#include "xfs/xfs_format.h"
 
 /* internal fshandle - typecast to a void for external use */
 #define FSHANDLE_SZ		8
@@ -168,8 +170,8 @@ jdm_attr_list(	jdm_fshandle_t *fshp,
 	int rval;
 
 	/* prevent needless EINVAL from the kernel */
-	if (bufsz > XATTR_LIST_MAX)
-		bufsz = XATTR_LIST_MAX;
+	if (bufsz > XFS_XATTR_LIST_MAX)
+		bufsz = XFS_XATTR_LIST_MAX;
 
 	jdm_fill_filehandle( &filehandle, fshandlep, statp );
 	rval = attr_list_by_handle (( void * )&filehandle,
diff --git a/libxfs/xfs_attr_remote.c b/libxfs/xfs_attr_remote.c
index 5feaf55..98893e2 100644
--- a/libxfs/xfs_attr_remote.c
+++ b/libxfs/xfs_attr_remote.c
@@ -102,7 +102,7 @@ xfs_attr3_rmt_verify(
 	if (be32_to_cpu(rmt->rm_bytes) > fsbsize - sizeof(*rmt))
 		return false;
 	if (be32_to_cpu(rmt->rm_offset) +
-				be32_to_cpu(rmt->rm_bytes) > XATTR_SIZE_MAX)
+				be32_to_cpu(rmt->rm_bytes) > XFS_XATTR_SIZE_MAX)
 		return false;
 	if (rmt->rm_owner == 0)
 		return false;
diff --git a/libxfs/xfs_format.h b/libxfs/xfs_format.h
index bb7cc04..2380084 100644
--- a/libxfs/xfs_format.h
+++ b/libxfs/xfs_format.h
@@ -60,6 +60,14 @@ struct xfs_ifork;
 #define	XFS_SB_VERSION_MOREBITSBIT	0x8000
 
 /*
+ * Avoid dependency on linux values of XATTR.
+ * It has to be on the beginning of this file, because we use these Values
+ * later in this header file.
+ */
+#define XFS_XATTR_SIZE_MAX 65536    /* size of an extended attribute value (64k) */
+#define XFS_XATTR_LIST_MAX 65536    /* size of extended attribute namelist (64k) */
+
+/*
  * Supported feature bit list is just all bits in the versionnum field because
  * we've used them all up and understand them all. Except, of course, for the
  * shared superblock bit, which nobody knows what it does and so is unsupported.
@@ -1483,7 +1491,7 @@ struct xfs_acl {
  */
 #define XFS_ACL_MAX_ENTRIES(mp)	\
 	(xfs_sb_version_hascrc(&mp->m_sb) \
-		?  (XATTR_SIZE_MAX - sizeof(struct xfs_acl)) / \
+		?  (XFS_XATTR_SIZE_MAX - sizeof(struct xfs_acl)) / \
 						sizeof(struct xfs_acl_entry) \
 		: 25)
 
@@ -1497,4 +1505,5 @@ struct xfs_acl {
 #define SGI_ACL_FILE_SIZE	(sizeof(SGI_ACL_FILE)-1)
 #define SGI_ACL_DEFAULT_SIZE	(sizeof(SGI_ACL_DEFAULT)-1)
 
+
 #endif /* __XFS_FORMAT_H__ */
-- 
2.4.5

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  reply	other threads:[~2015-08-26 12:02 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-26 12:00 [PATCH 00/11 v4] xfsprogs: Partial OSX support Jan Tulak
2015-08-26 12:02 ` [PATCH 01/11] xfsprogs: Add a way to compile without blkid Jan Tulak
2015-08-26 12:02   ` Jan Tulak [this message]
2015-08-26 22:01     ` [PATCH 02/11] xfsprogs: avoid dependency on linux XATTR_SIZE/LIST_MAX Dave Chinner
2015-08-27  6:06       ` Jan Tulak
2015-08-27  6:02     ` Jan Tulak
2015-09-03 10:33       ` [PATCH 02a/11] xfsprogs: Add XATTR_LIST_MAX to OS X headers Jan Tulak
2015-09-03 10:33         ` [PATCH 02b/11] xfsprogs: avoid dependency on Linux XATTR_SIZE_MAX Jan Tulak
2015-09-03 10:33         ` [PATCH 02c/11] xfsprogs: prefix XATTR_LIST_MAX with XFS_ Jan Tulak
2015-08-31 18:58     ` [PATCH 02/11] xfsprogs: avoid dependency on linux XATTR_SIZE/LIST_MAX Christoph Hellwig
2015-09-01  8:13       ` Jan Tulak
2015-09-01  8:35         ` Jan Tulak
2015-08-26 12:02   ` [PATCH 03/11] xfsprogs: Add includes required for OS X builds (delta) Jan Tulak
2015-08-31 18:58     ` Christoph Hellwig
2015-08-26 12:02   ` [PATCH 04/11] xfsprogs: Add autoconf check for fsetxattr call Jan Tulak
2015-08-31 18:59     ` Christoph Hellwig
2015-08-26 12:02   ` [PATCH 05/11] xfsprogs: uuid changes for OS X Jan Tulak
2015-08-31 18:59     ` Christoph Hellwig
2015-08-26 12:02   ` [PATCH 06/11] xfsprogs: Remove conflicting define " Jan Tulak
2015-08-31 18:59     ` Christoph Hellwig
2015-08-26 12:02   ` [PATCH 07/11] xfsprogs: add nftw64 translation " Jan Tulak
2015-08-31 18:59     ` Christoph Hellwig
2015-09-01  7:49       ` Jan Tulak
2015-09-01  8:04       ` [PATCH v2] " Jan Tulak
2015-09-01 16:31         ` Darrick J. Wong
2015-09-01 17:24           ` Christoph Hellwig
2015-09-02  7:12           ` Jan Tulak
2015-09-03 10:39     ` [PATCH v2 07/11] xfsprogs: change nftw64 to nftw Jan Tulak
2015-09-09 10:11       ` Jan Tulak
2015-09-09 10:14       ` [PATCH v3 " Jan Tulak
2015-08-26 12:02   ` [PATCH 08/11] xfsprogs: Add a timer implementation for OS X Jan Tulak
2015-08-31 19:00     ` Christoph Hellwig
2015-09-02 10:54       ` Jan Tulak
2015-08-26 12:02   ` [PATCH 09/11] xfsprogs: Add statvfs64 for osx Jan Tulak
2015-09-08 14:24     ` [PATCH 09/11 v2] " Jan Tulak
2015-08-26 12:02   ` [PATCH 10/11] xfsprogs: add dummy mntent for OS X Jan Tulak
2015-08-31 19:01     ` Christoph Hellwig
2015-09-03  9:01       ` Jan Tulak
2015-09-03 10:33         ` Dave Chinner
2015-09-03 10:37           ` Jan Tulak
2015-09-08 14:23     ` [PATCH 10/11 v2] xfsprogs: make fsr use mntinfo when there is no mntent Jan Tulak
2015-08-26 12:02   ` [PATCH 11/11] xfsprogs: add dummy mremap for OS X Jan Tulak
2015-08-31 19:01     ` Christoph Hellwig
2015-09-03 10:35     ` [PATCH v2] xfsprogs: Make mremap conditional Jan Tulak
2015-08-31 18:57   ` [PATCH 01/11] xfsprogs: Add a way to compile without blkid Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1440590555-20463-2-git-send-email-jtulak@redhat.com \
    --to=jtulak@redhat.com \
    --cc=hch@infradead.org \
    --cc=xfs@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox