xfs: sync minor header differences needed by userspace.
Little things like exported functions, __KERNEL__ protections, and so on that ensure user and kernel shared headers are identical. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Brian Foster <bfoster@redhat.com> Reviewed-by: Mark Tinguely <tinguely@sgi.com> Signed-off-by: Ben Myers <bpm@sgi.com>
This commit is contained in:
parent
76456fc2a6
commit
d386b32b55
|
@ -21,6 +21,7 @@
|
||||||
#include "xfs_bit.h"
|
#include "xfs_bit.h"
|
||||||
#include "xfs_log.h"
|
#include "xfs_log.h"
|
||||||
#include "xfs_trans.h"
|
#include "xfs_trans.h"
|
||||||
|
#include "xfs_trans_priv.h"
|
||||||
#include "xfs_sb.h"
|
#include "xfs_sb.h"
|
||||||
#include "xfs_ag.h"
|
#include "xfs_ag.h"
|
||||||
#include "xfs_mount.h"
|
#include "xfs_mount.h"
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
#include "xfs_bit.h"
|
#include "xfs_bit.h"
|
||||||
#include "xfs_log.h"
|
#include "xfs_log.h"
|
||||||
#include "xfs_trans.h"
|
#include "xfs_trans.h"
|
||||||
|
#include "xfs_trans_priv.h"
|
||||||
#include "xfs_sb.h"
|
#include "xfs_sb.h"
|
||||||
#include "xfs_ag.h"
|
#include "xfs_ag.h"
|
||||||
#include "xfs_mount.h"
|
#include "xfs_mount.h"
|
||||||
|
|
|
@ -333,6 +333,8 @@ int xfs_attr3_leaf_read(struct xfs_trans *tp, struct xfs_inode *dp,
|
||||||
struct xfs_buf **bpp);
|
struct xfs_buf **bpp);
|
||||||
void xfs_attr3_leaf_hdr_from_disk(struct xfs_attr3_icleaf_hdr *to,
|
void xfs_attr3_leaf_hdr_from_disk(struct xfs_attr3_icleaf_hdr *to,
|
||||||
struct xfs_attr_leafblock *from);
|
struct xfs_attr_leafblock *from);
|
||||||
|
void xfs_attr3_leaf_hdr_to_disk(struct xfs_attr_leafblock *to,
|
||||||
|
struct xfs_attr3_icleaf_hdr *from);
|
||||||
|
|
||||||
extern const struct xfs_buf_ops xfs_attr3_leaf_buf_ops;
|
extern const struct xfs_buf_ops xfs_attr3_leaf_buf_ops;
|
||||||
|
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
#include "xfs_bit.h"
|
#include "xfs_bit.h"
|
||||||
#include "xfs_log.h"
|
#include "xfs_log.h"
|
||||||
#include "xfs_trans.h"
|
#include "xfs_trans.h"
|
||||||
|
#include "xfs_trans_priv.h"
|
||||||
#include "xfs_sb.h"
|
#include "xfs_sb.h"
|
||||||
#include "xfs_ag.h"
|
#include "xfs_ag.h"
|
||||||
#include "xfs_mount.h"
|
#include "xfs_mount.h"
|
||||||
|
|
|
@ -137,9 +137,11 @@ typedef struct xfs_bmalloca {
|
||||||
char conv; /* overwriting unwritten extents */
|
char conv; /* overwriting unwritten extents */
|
||||||
char stack_switch;
|
char stack_switch;
|
||||||
int flags;
|
int flags;
|
||||||
|
#ifdef __KERNEL__
|
||||||
struct completion *done;
|
struct completion *done;
|
||||||
struct work_struct work;
|
struct work_struct work;
|
||||||
int result;
|
int result;
|
||||||
|
#endif /* __KERNEL__ */
|
||||||
} xfs_bmalloca_t;
|
} xfs_bmalloca_t;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -88,13 +88,11 @@ struct xfs_btree_block {
|
||||||
#define XFS_BTREE_SBLOCK_CRC_LEN (XFS_BTREE_SBLOCK_LEN + 40)
|
#define XFS_BTREE_SBLOCK_CRC_LEN (XFS_BTREE_SBLOCK_LEN + 40)
|
||||||
#define XFS_BTREE_LBLOCK_CRC_LEN (XFS_BTREE_LBLOCK_LEN + 48)
|
#define XFS_BTREE_LBLOCK_CRC_LEN (XFS_BTREE_LBLOCK_LEN + 48)
|
||||||
|
|
||||||
|
|
||||||
#define XFS_BTREE_SBLOCK_CRC_OFF \
|
#define XFS_BTREE_SBLOCK_CRC_OFF \
|
||||||
offsetof(struct xfs_btree_block, bb_u.s.bb_crc)
|
offsetof(struct xfs_btree_block, bb_u.s.bb_crc)
|
||||||
#define XFS_BTREE_LBLOCK_CRC_OFF \
|
#define XFS_BTREE_LBLOCK_CRC_OFF \
|
||||||
offsetof(struct xfs_btree_block, bb_u.l.bb_crc)
|
offsetof(struct xfs_btree_block, bb_u.l.bb_crc)
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Generic key, ptr and record wrapper structures.
|
* Generic key, ptr and record wrapper structures.
|
||||||
*
|
*
|
||||||
|
|
|
@ -519,6 +519,9 @@ struct xfs_dir3_leaf {
|
||||||
|
|
||||||
#define XFS_DIR3_LEAF_CRC_OFF offsetof(struct xfs_dir3_leaf_hdr, info.crc)
|
#define XFS_DIR3_LEAF_CRC_OFF offsetof(struct xfs_dir3_leaf_hdr, info.crc)
|
||||||
|
|
||||||
|
extern void xfs_dir3_leaf_hdr_from_disk(struct xfs_dir3_icleaf_hdr *to,
|
||||||
|
struct xfs_dir2_leaf *from);
|
||||||
|
|
||||||
static inline int
|
static inline int
|
||||||
xfs_dir3_leaf_hdr_size(struct xfs_dir2_leaf *lp)
|
xfs_dir3_leaf_hdr_size(struct xfs_dir2_leaf *lp)
|
||||||
{
|
{
|
||||||
|
|
|
@ -310,6 +310,17 @@ typedef struct xfs_bstat {
|
||||||
__u16 bs_aextents; /* attribute number of extents */
|
__u16 bs_aextents; /* attribute number of extents */
|
||||||
} xfs_bstat_t;
|
} xfs_bstat_t;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Project quota id helpers (previously projid was 16bit only
|
||||||
|
* and using two 16bit values to hold new 32bit projid was choosen
|
||||||
|
* to retain compatibility with "old" filesystems).
|
||||||
|
*/
|
||||||
|
static inline __uint32_t
|
||||||
|
bstat_get_projid(struct xfs_bstat *bs)
|
||||||
|
{
|
||||||
|
return (__uint32_t)bs->bs_projid_hi << 16 | bs->bs_projid_lo;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The user-level BulkStat Request interface structure.
|
* The user-level BulkStat Request interface structure.
|
||||||
*/
|
*/
|
||||||
|
@ -511,8 +522,14 @@ typedef struct xfs_handle {
|
||||||
#define XFS_IOC_ERROR_INJECTION _IOW ('X', 116, struct xfs_error_injection)
|
#define XFS_IOC_ERROR_INJECTION _IOW ('X', 116, struct xfs_error_injection)
|
||||||
#define XFS_IOC_ERROR_CLEARALL _IOW ('X', 117, struct xfs_error_injection)
|
#define XFS_IOC_ERROR_CLEARALL _IOW ('X', 117, struct xfs_error_injection)
|
||||||
/* XFS_IOC_ATTRCTL_BY_HANDLE -- deprecated 118 */
|
/* XFS_IOC_ATTRCTL_BY_HANDLE -- deprecated 118 */
|
||||||
|
|
||||||
/* XFS_IOC_FREEZE -- FIFREEZE 119 */
|
/* XFS_IOC_FREEZE -- FIFREEZE 119 */
|
||||||
/* XFS_IOC_THAW -- FITHAW 120 */
|
/* XFS_IOC_THAW -- FITHAW 120 */
|
||||||
|
#ifndef FIFREEZE
|
||||||
|
#define XFS_IOC_FREEZE _IOWR('X', 119, int)
|
||||||
|
#define XFS_IOC_THAW _IOWR('X', 120, int)
|
||||||
|
#endif
|
||||||
|
|
||||||
#define XFS_IOC_FSSETDM_BY_HANDLE _IOW ('X', 121, struct xfs_fsop_setdm_handlereq)
|
#define XFS_IOC_FSSETDM_BY_HANDLE _IOW ('X', 121, struct xfs_fsop_setdm_handlereq)
|
||||||
#define XFS_IOC_ATTRLIST_BY_HANDLE _IOW ('X', 122, struct xfs_fsop_attrlist_handlereq)
|
#define XFS_IOC_ATTRLIST_BY_HANDLE _IOW ('X', 122, struct xfs_fsop_attrlist_handlereq)
|
||||||
#define XFS_IOC_ATTRMULTI_BY_HANDLE _IOW ('X', 123, struct xfs_fsop_attrmulti_handlereq)
|
#define XFS_IOC_ATTRMULTI_BY_HANDLE _IOW ('X', 123, struct xfs_fsop_attrmulti_handlereq)
|
||||||
|
|
|
@ -554,6 +554,13 @@ static inline int xfs_sb_version_hasprojid32bit(xfs_sb_t *sbp)
|
||||||
(sbp->sb_features2 & XFS_SB_VERSION2_PROJID32BIT));
|
(sbp->sb_features2 & XFS_SB_VERSION2_PROJID32BIT));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline void xfs_sb_version_addprojid32bit(xfs_sb_t *sbp)
|
||||||
|
{
|
||||||
|
sbp->sb_versionnum |= XFS_SB_VERSION_MOREBITSBIT;
|
||||||
|
sbp->sb_features2 |= XFS_SB_VERSION2_PROJID32BIT;
|
||||||
|
sbp->sb_bad_features2 |= XFS_SB_VERSION2_PROJID32BIT;
|
||||||
|
}
|
||||||
|
|
||||||
static inline int xfs_sb_version_hascrc(xfs_sb_t *sbp)
|
static inline int xfs_sb_version_hascrc(xfs_sb_t *sbp)
|
||||||
{
|
{
|
||||||
return XFS_SB_VERSION_NUM(sbp) == XFS_SB_VERSION_5;
|
return XFS_SB_VERSION_NUM(sbp) == XFS_SB_VERSION_5;
|
||||||
|
|
|
@ -49,7 +49,8 @@ struct xfs_dsymlink_hdr {
|
||||||
sizeof(struct xfs_dsymlink_hdr) : 0))
|
sizeof(struct xfs_dsymlink_hdr) : 0))
|
||||||
|
|
||||||
int xfs_symlink_blocks(struct xfs_mount *mp, int pathlen);
|
int xfs_symlink_blocks(struct xfs_mount *mp, int pathlen);
|
||||||
|
bool xfs_symlink_hdr_ok(struct xfs_mount *mp, xfs_ino_t ino, uint32_t offset,
|
||||||
|
uint32_t size, struct xfs_buf *bp);
|
||||||
void xfs_symlink_local_to_remote(struct xfs_trans *tp, struct xfs_buf *bp,
|
void xfs_symlink_local_to_remote(struct xfs_trans *tp, struct xfs_buf *bp,
|
||||||
struct xfs_inode *ip, struct xfs_ifork *ifp);
|
struct xfs_inode *ip, struct xfs_ifork *ifp);
|
||||||
|
|
||||||
|
|
|
@ -64,7 +64,7 @@ struct xfs_log_item;
|
||||||
#define XFS_ADDAFORK_LOG_RES(mp) ((mp)->m_reservations.tr_addafork)
|
#define XFS_ADDAFORK_LOG_RES(mp) ((mp)->m_reservations.tr_addafork)
|
||||||
#define XFS_ATTRINVAL_LOG_RES(mp) ((mp)->m_reservations.tr_attrinval)
|
#define XFS_ATTRINVAL_LOG_RES(mp) ((mp)->m_reservations.tr_attrinval)
|
||||||
#define XFS_ATTRSETM_LOG_RES(mp) ((mp)->m_reservations.tr_attrsetm)
|
#define XFS_ATTRSETM_LOG_RES(mp) ((mp)->m_reservations.tr_attrsetm)
|
||||||
#define XFS_ATTRSETRT_LOG_RES(mp) ((mp)->m_reservations.tr_attrsetrt)
|
#define XFS_ATTRSETRT_LOG_RES(mp) ((mp)->m_reservations.tr_attrsetrt)
|
||||||
#define XFS_ATTRRM_LOG_RES(mp) ((mp)->m_reservations.tr_attrrm)
|
#define XFS_ATTRRM_LOG_RES(mp) ((mp)->m_reservations.tr_attrrm)
|
||||||
#define XFS_CLEAR_AGI_BUCKET_LOG_RES(mp) ((mp)->m_reservations.tr_clearagi)
|
#define XFS_CLEAR_AGI_BUCKET_LOG_RES(mp) ((mp)->m_reservations.tr_clearagi)
|
||||||
#define XFS_QM_SBCHANGE_LOG_RES(mp) ((mp)->m_reservations.tr_qm_sbchange)
|
#define XFS_QM_SBCHANGE_LOG_RES(mp) ((mp)->m_reservations.tr_qm_sbchange)
|
||||||
|
@ -325,7 +325,4 @@ extern kmem_zone_t *xfs_log_item_desc_zone;
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
#endif /* __KERNEL__ */
|
||||||
|
|
||||||
void xfs_trans_init(struct xfs_mount *);
|
|
||||||
int xfs_trans_roll(struct xfs_trans **, struct xfs_inode *);
|
|
||||||
|
|
||||||
#endif /* __XFS_TRANS_H__ */
|
#endif /* __XFS_TRANS_H__ */
|
||||||
|
|
|
@ -25,6 +25,9 @@ struct xfs_trans;
|
||||||
struct xfs_ail;
|
struct xfs_ail;
|
||||||
struct xfs_log_vec;
|
struct xfs_log_vec;
|
||||||
|
|
||||||
|
|
||||||
|
void xfs_trans_init(struct xfs_mount *);
|
||||||
|
int xfs_trans_roll(struct xfs_trans **, struct xfs_inode *);
|
||||||
void xfs_trans_add_item(struct xfs_trans *, struct xfs_log_item *);
|
void xfs_trans_add_item(struct xfs_trans *, struct xfs_log_item *);
|
||||||
void xfs_trans_del_item(struct xfs_log_item *);
|
void xfs_trans_del_item(struct xfs_log_item *);
|
||||||
void xfs_trans_free_items(struct xfs_trans *tp, xfs_lsn_t commit_lsn,
|
void xfs_trans_free_items(struct xfs_trans *tp, xfs_lsn_t commit_lsn,
|
||||||
|
|
|
@ -32,7 +32,6 @@ typedef unsigned int __uint32_t;
|
||||||
typedef signed long long int __int64_t;
|
typedef signed long long int __int64_t;
|
||||||
typedef unsigned long long int __uint64_t;
|
typedef unsigned long long int __uint64_t;
|
||||||
|
|
||||||
typedef __uint32_t prid_t; /* project ID */
|
|
||||||
typedef __uint32_t inst_t; /* an instruction */
|
typedef __uint32_t inst_t; /* an instruction */
|
||||||
|
|
||||||
typedef __s64 xfs_off_t; /* <file offset> type */
|
typedef __s64 xfs_off_t; /* <file offset> type */
|
||||||
|
@ -55,6 +54,8 @@ typedef __uint64_t __psunsigned_t;
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
#endif /* __KERNEL__ */
|
||||||
|
|
||||||
|
typedef __uint32_t prid_t; /* project ID */
|
||||||
|
|
||||||
typedef __uint32_t xfs_agblock_t; /* blockno in alloc. group */
|
typedef __uint32_t xfs_agblock_t; /* blockno in alloc. group */
|
||||||
typedef __uint32_t xfs_agino_t; /* inode # within allocation grp */
|
typedef __uint32_t xfs_agino_t; /* inode # within allocation grp */
|
||||||
typedef __uint32_t xfs_extlen_t; /* extent length in blocks */
|
typedef __uint32_t xfs_extlen_t; /* extent length in blocks */
|
||||||
|
|
Loading…
Reference in New Issue