avlnode_t **startp,
avlnode_t **endp);
+avlnode_t *
+avl_firstino(
+ avlnode_t *root);
+
+avlnode_t *
+avl_lastino(
+ avlnode_t *root);
+
+
#define AVL_PRECEED 0x1
#define AVL_SUCCEED 0x2
#define BLKMAP_NEXTS_MAX INT_MAX
#endif
+extern pthread_key_t dblkmap_key;
+extern pthread_key_t ablkmap_key;
+
blkmap_t *blkmap_alloc(xfs_extnum_t nex, int whichfork);
void blkmap_free(blkmap_t *blkmap);
* the nodes.
*/
void incore_ext_teardown(xfs_mount_t *mp);
-
void incore_ino_init(xfs_mount_t *);
+int count_bno_extents(xfs_agnumber_t);
+int count_bno_extents_blocks(xfs_agnumber_t, uint *);
+int count_bcnt_extents(xfs_agnumber_t);
+
/*
* inode definitions
*/
extent_tree_node_t *
findbiggest_bcnt_extent(xfs_agnumber_t agno)
{
- extern avlnode_t *avl_lastino(avlnode_t *root);
-
ASSERT(extent_bcnt_ptrs != NULL);
ASSERT(extent_bcnt_ptrs[agno] != NULL);
#include "threads.h"
#include "err_protos.h"
-extern avlnode_t *avl_firstino(avlnode_t *root);
-
/*
* array of inode tree ptrs, one per ag
*/
static pthread_key_t dir_freemap_key;
static pthread_key_t attr_freemap_key;
-extern pthread_key_t dblkmap_key;
-extern pthread_key_t ablkmap_key;
-
static void
ts_alloc(pthread_key_t key, unsigned n, size_t size)
{
int ag_hdr_len = 4 * mp->m_sb.sb_sectsize;
int ag_hdr_block;
int bstate;
- int count_bcnt_extents(xfs_agnumber_t agno);
- int count_bno_extents(xfs_agnumber_t agno);
ag_hdr_block = howmany(ag_hdr_len, mp->m_sb.sb_blocksize);
xfs_extlen_t freeblks2;
#endif
xfs_agblock_t num_extents;
- extern int count_bno_extents(xfs_agnumber_t);
- extern int count_bno_extents_blocks(xfs_agnumber_t, uint *);
-#ifdef XR_BLD_FREE_TRACE
- extern int count_bcnt_extents(xfs_agnumber_t);
-#endif
if (verbose)
do_log(_(" - agno = %d\n"), agno);
char *alloc_ag_buf(int size);
void print_inode_list(xfs_agnumber_t i);
-char * err_string(int err_code);
-
-extern void *ts_attr_freemap(void);
-extern void *ts_dir_freemap(void);
-extern void *ts_dirbuf(void);
-extern void ts_init(void);
-extern void thread_init(void);
+char *err_string(int err_code);
+
+void *ts_attr_freemap(void);
+void *ts_dir_freemap(void);
+void *ts_dirbuf(void);
+void ts_init(void);
+void thread_init(void);
+
+void phase1(struct xfs_mount *);
+void phase2(struct xfs_mount *, int);
+void phase3(struct xfs_mount *);
+void phase4(struct xfs_mount *);
+void phase5(struct xfs_mount *);
+void phase6(struct xfs_mount *);
+void phase7(struct xfs_mount *);
+
+int verify_set_agheader(struct xfs_mount *, struct xfs_buf *,
+ struct xfs_sb *, struct xfs_agf *, struct xfs_agi *,
+ xfs_agnumber_t);
#include "progress.h"
#include "threads.h"
-extern int verify_set_agheader(xfs_mount_t *mp, xfs_buf_t *sbuf, xfs_sb_t *sb,
- xfs_agf_t *agf, xfs_agi_t *agi, xfs_agnumber_t i);
-
static xfs_mount_t *mp = NULL;
/*
#define rounddown(x, y) (((x)/(y))*(y))
-extern void phase1(xfs_mount_t *);
-extern void phase2(xfs_mount_t *, int);
-extern void phase3(xfs_mount_t *);
-extern void phase4(xfs_mount_t *);
-extern void phase5(xfs_mount_t *);
-extern void phase6(xfs_mount_t *);
-extern void phase7(xfs_mount_t *);
-
#define XR_MAX_SECT_SIZE (64 * 1024)
/*