1 /* 2 * Copyright (c) 1989, 1991 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 * 7 * @(#)lfs_debug.c 5.3 (Berkeley) 10/09/91 8 */ 9 10 #ifdef LOGFS 11 #include "param.h" 12 #include "namei.h" 13 #include "vnode.h" 14 #include "../ufs/quota.h" 15 #include "../ufs/inode.h" 16 #include "lfs.h" 17 18 void 19 dump_super(lfsp) 20 LFS *lfsp; 21 { 22 int i; 23 24 (void)printf("%s%lx\t%s%lx\t%s%d\t%s%d\n", 25 "magic ", lfsp->lfs_magic, 26 "version ", lfsp->lfs_version, 27 "size ", lfsp->lfs_size, 28 "ssize ", lfsp->lfs_ssize); 29 (void)printf("%s%d\t%s%d\t%s%d\t%s%d\n", 30 "dsize ", lfsp->lfs_dsize, 31 "bsize ", lfsp->lfs_bsize, 32 "fsize ", lfsp->lfs_fsize, 33 "frag ", lfsp->lfs_frag); 34 35 (void)printf("%s%d\t%s%d\t%s%d\t%s%d\n", 36 "minfree ", lfsp->lfs_minfree, 37 "inopb ", lfsp->lfs_inopb, 38 "ifpb ", lfsp->lfs_ifpb, 39 "nindir ", lfsp->lfs_nindir); 40 41 (void)printf("%s%d\t%s%d\t%s%d\n", 42 "nseg ", lfsp->lfs_nseg, 43 "nspf ", lfsp->lfs_nspf, 44 "segtabsz ", lfsp->lfs_segtabsz); 45 46 (void)printf("%s%lx\t%s%d\t%s%lx\t%s%d\n", 47 "segmask ", lfsp->lfs_segmask, 48 "segshift ", lfsp->lfs_segshift, 49 "bmask ", lfsp->lfs_bmask, 50 "bshift ", lfsp->lfs_bshift); 51 52 (void)printf("%s%lx\t%s%d\t%s%lx\t%s%d\n", 53 "ffmask ", lfsp->lfs_ffmask, 54 "ffshift ", lfsp->lfs_ffshift, 55 "fbmask ", lfsp->lfs_fbmask, 56 "fbshift ", lfsp->lfs_fbshift); 57 58 (void)printf("%s%d\t%s%lx\n", 59 "fsbtodb ", lfsp->lfs_fsbtodb, 60 "cksum ", lfsp->lfs_cksum); 61 62 (void)printf("Superblock disk addresses:"); 63 for (i = 0; i < LFS_MAXNUMSB; i++) 64 (void)printf(" %lx", lfsp->lfs_sboffs[i]); 65 (void)printf("\n"); 66 67 (void)printf("Checkpoint Info\n"); 68 (void)printf("%s%d\t%s%lx\t%s%d\n", 69 "free ", lfsp->lfs_free, 70 "idaddr ", lfsp->lfs_idaddr, 71 "ifile ", lfsp->lfs_ifile); 72 (void)printf("%s%lx\t%s%d\t%s%lx\t%s%lx\n", 73 "bfree ", lfsp->lfs_bfree, 74 "nfiles ", lfsp->lfs_nfiles, 75 "lastseg ", lfsp->lfs_lastseg, 76 "nextseg ", lfsp->lfs_nextseg); 77 (void)printf("tstamp %lx\n", lfsp->lfs_tstamp); 78 } 79 80 void 81 dump_dinode(dip) 82 DINODE *dip; 83 { 84 int i; 85 86 (void)printf("%s%d\t%s%d\t%s%d\t%s%d\t%s%d\n", 87 "mode ", dip->di_mode, 88 "nlink ", dip->di_nlink, 89 "uid ", dip->di_uid, 90 "gid ", dip->di_gid, 91 "size ", dip->di_size); 92 (void)printf("inum %d\n", dip->di_inum); 93 (void)printf("Direct Addresses\n"); 94 for (i = 0; i < NDADDR; i++) { 95 (void)printf("\t%lx", dip->di_db[i]); 96 if ((i % 6) == 5) 97 (void)printf("\n"); 98 } 99 for (i = 0; i < NIADDR; i++) 100 (void)printf("\t%lx", dip->di_ib[i]); 101 (void)printf("\n"); 102 } 103 104 void 105 lfs_print_inumber(vp) 106 VNODE *vp; 107 { 108 (void)printf("%d\n", VTOI(vp)->i_number); 109 } 110 111 void 112 lfs_spin() 113 { 114 u_long i, j; 115 116 for (i = 0; i < 10; ++i) 117 for (j = 0; j < 1000000; ++j); 118 } 119 #endif /* LOGFS */ 120