1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2000-2001,2005 Silicon Graphics, Inc.
9 /* global variables for xfs_repair */
11 /* arguments and argument flag variables */
13 char *fs_name
; /* name of filesystem */
14 int verbose
; /* verbose flag, mostly for debugging */
17 /* for reading stuff in manually (bypassing libsim) */
19 char *iobuf
; /* large buffer */
21 char *smallbuf
; /* small (1-4 page) buffer */
27 int minio_align
; /* min I/O size and alignment */
28 int mem_align
; /* memory alignment */
29 int max_iosize
; /* max I/O size */
31 /* file descriptors */
33 int fs_fd
; /* filesystem fd */
35 /* command-line flags */
39 int dangerously
; /* live dangerously ... fix ro mount */
42 int dumpcore
; /* abort, not exit on fatal errs */
43 int force_geo
; /* can set geo on low confidence info */
44 int assume_xfs
; /* assume we have an xfs fs */
45 char *log_name
; /* Name of log device */
46 int log_spec
; /* Log dev specified as option */
47 char *rt_name
; /* Name of realtime device */
48 int rt_spec
; /* Realtime dev specified as option */
49 int convert_lazy_count
; /* Convert lazy-count mode on/off */
50 int lazy_count
; /* What to set if to if converting */
52 /* misc status variables */
54 int primary_sb_modified
;
59 /* for hunting down the root inode */
75 xfs_agino_t first_prealloc_ino
;
76 xfs_agino_t last_prealloc_ino
;
77 xfs_agblock_t bnobt_root
;
78 xfs_agblock_t bcntbt_root
;
79 xfs_agblock_t inobt_root
;
81 /* configuration vars -- fs geometry dependent */
84 int inodes_per_cluster
;
85 unsigned int glob_agcount
;
86 int chunks_pblock
; /* # of 64-ino chunks per allocation */
87 int max_symlink_blocks
;
88 int64_t fs_max_file_offset
;
92 xfs_rtword_t
*btmcompute
;
93 xfs_suminfo_t
*sumcompute
;
95 /* inode tree records have full or partial backptr fields ? */
97 int full_ino_ex_data
; /*
98 * if 1, use ino_ex_data_t component
99 * of ino_un union, if 0, use
100 * parent_list_t component. see
101 * incore.h for more details
104 #define ORPHANAGE "lost+found"
106 /* superblock counters */
108 uint64_t sb_icount
; /* allocated (made) inodes */
109 uint64_t sb_ifree
; /* free inodes */
110 uint64_t sb_fdblocks
; /* free data blocks */
111 uint64_t sb_frextents
; /* free realtime extents */
113 /* superblock geometry info */
115 xfs_extlen_t sb_inoalignmt
;
119 struct aglock
*ag_locks
;
122 uint64_t *prog_rpt_done
;