From: Darrick J. Wong <djwong@xxxxxxxxxx> Userspace libxfs is supposed to match the kernel libxfs except for the preprocessor include directives. Fix a few discrepancies that came up for whatever reason. To fix the build errors resulting from CONFIG_XFS_RT not being defined, add it to libxfs.h and alter the Makefile to track xfs_rtbitmap.h. Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Bill O'Donnell <bodonnel@xxxxxxxxxx> --- db/check.c | 1 - include/libxfs.h | 4 ++++ libxfs/Makefile | 1 + libxfs/xfs_rtbitmap.c | 2 +- libxfs/xfs_rtbitmap.h | 3 --- repair/rt.c | 1 - 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/db/check.c b/db/check.c index 9d5576c33..a47a5d9cb 100644 --- a/db/check.c +++ b/db/check.c @@ -20,7 +20,6 @@ #include "init.h" #include "malloc.h" #include "dir2.h" -#include "xfs_rtbitmap.h" typedef enum { IS_USER_QUOTA, IS_PROJECT_QUOTA, IS_GROUP_QUOTA, diff --git a/include/libxfs.h b/include/libxfs.h index 9cec394ca..aeec2bc76 100644 --- a/include/libxfs.h +++ b/include/libxfs.h @@ -7,6 +7,9 @@ #ifndef __LIBXFS_H__ #define __LIBXFS_H__ +/* For userspace XFS_RT is always defined */ +#define CONFIG_XFS_RT + #include "libxfs_api_defs.h" #include "platform_defs.h" #include "xfs.h" @@ -80,6 +83,7 @@ struct iomap; #include "xfs_refcount_btree.h" #include "xfs_refcount.h" #include "xfs_btree_staging.h" +#include "xfs_rtbitmap.h" #ifndef ARRAY_SIZE #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) diff --git a/libxfs/Makefile b/libxfs/Makefile index 010ee68e2..6f688c0ad 100644 --- a/libxfs/Makefile +++ b/libxfs/Makefile @@ -50,6 +50,7 @@ HFILES = \ xfs_refcount_btree.h \ xfs_rmap.h \ xfs_rmap_btree.h \ + xfs_rtbitmap.h \ xfs_sb.h \ xfs_shared.h \ xfs_trans_resv.h \ diff --git a/libxfs/xfs_rtbitmap.c b/libxfs/xfs_rtbitmap.c index 8f313339e..fb0834990 100644 --- a/libxfs/xfs_rtbitmap.c +++ b/libxfs/xfs_rtbitmap.c @@ -931,7 +931,7 @@ xfs_rtcheck_alloc_range( */ int xfs_rtfree_extent( - xfs_trans_t *tp, /* transaction pointer */ + struct xfs_trans *tp, /* transaction pointer */ xfs_rtxnum_t start, /* starting rtext number to free */ xfs_rtxlen_t len) /* length of extent freed */ { diff --git a/libxfs/xfs_rtbitmap.h b/libxfs/xfs_rtbitmap.h index db2f8c924..c0637057d 100644 --- a/libxfs/xfs_rtbitmap.h +++ b/libxfs/xfs_rtbitmap.h @@ -6,9 +6,6 @@ #ifndef __XFS_RTBITMAP_H__ #define __XFS_RTBITMAP_H__ -/* For userspace XFS_RT is always defined */ -#define CONFIG_XFS_RT - struct xfs_rtalloc_args { struct xfs_mount *mp; struct xfs_trans *tp; diff --git a/repair/rt.c b/repair/rt.c index abe58b569..9f3bc8d53 100644 --- a/repair/rt.c +++ b/repair/rt.c @@ -13,7 +13,6 @@ #include "protos.h" #include "err_protos.h" #include "rt.h" -#include "xfs_rtbitmap.h" #define xfs_highbit64 libxfs_highbit64 /* for XFS_RTBLOCKLOG macro */