#ifndef _H_JFS_XTREE
#define _H_JFS_XTREE
#include "jfs_btree.h"
xad_t;
#define MAXXLEN …
#define XTSLOTSIZE …
#define L2XTSLOTSIZE …
#define XADoffset(xad, offset64) …
#define XADaddress(xad, address64) …
#define XADlength(xad, length32) …
#define offsetXAD(xad) …
#define addressXAD(xad) …
#define lengthXAD(xad) …
struct xadlist { … };
#define XAD_NEW …
#define XAD_EXTENDED …
#define XAD_COMPRESSED …
#define XAD_NOTRECORDED …
#define XAD_COW …
#define XTROOTINITSLOT_DIR …
#define XTROOTINITSLOT …
#define XTROOTMAXSLOT …
#define XTPAGEMAXSLOT …
#define XTENTRYSTART …
struct xtheader { … };
xtroot_t;
xtpage_t;
extern int xtLookup(struct inode *ip, s64 lstart, s64 llen,
int *pflag, s64 * paddr, int *plen, int flag);
extern void xtInitRoot(tid_t tid, struct inode *ip);
extern int xtInsert(tid_t tid, struct inode *ip,
int xflag, s64 xoff, int xlen, s64 * xaddrp, int flag);
extern int xtExtend(tid_t tid, struct inode *ip, s64 xoff, int xlen,
int flag);
extern int xtUpdate(tid_t tid, struct inode *ip, struct xad *nxad);
extern s64 xtTruncate(tid_t tid, struct inode *ip, s64 newsize, int type);
extern s64 xtTruncate_pmap(tid_t tid, struct inode *ip, s64 committed_size);
extern int xtAppend(tid_t tid,
struct inode *ip, int xflag, s64 xoff, int maxblocks,
int *xlenp, s64 * xaddrp, int flag);
#endif