From owner-freebsd-current Wed Nov 10 1: 1:15 1999 Delivered-To: freebsd-current@freebsd.org Received: from rmstar.campus.luth.se (rmstar.campus.luth.se [130.240.197.32]) by hub.freebsd.org (Postfix) with ESMTP id 33BA815329 for ; Wed, 10 Nov 1999 01:01:09 -0800 (PST) (envelope-from murduth@rmstar.campus.luth.se) Received: from rmstar.campus.luth.se (localhost [127.0.0.1]) by rmstar.campus.luth.se (8.9.3/8.9.3) with ESMTP id KAA02514 for ; Wed, 10 Nov 1999 10:01:08 +0100 (CET) (envelope-from murduth@rmstar.campus.luth.se) Message-Id: <199911100901.KAA02514@rmstar.campus.luth.se> X-Mailer: exmh version 2.0.3 3/22/98 To: freebsd-current@freebsd.org Subject: Hosed fs? Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 10 Nov 1999 10:01:07 +0100 From: Joakim Henriksson Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hello, i can reproducible get a panic in cluster_alloc(), with a kernel a couple of days old. The code relevant to the panic is this. for (i = 1; i <= len; i++) if (!ffs_isblock(fs, cg_blksfree(cgp), got - run + i)) panic("ffs_clusteralloc: map mismatch"); Do i have a hosed fs? Since i've gotten a crashdump i can provide more information if needded, but i need this resolved soonish. So i'm thinking on newfs'ing the disk. Is this overkill or the right medicine for the patient? From the crashdump i've gotten: IdlePTD 2981888 initial pcb at 261b80 panicstr: ffs_clusteralloc: map mismatch #2 0xc019d785 in ffs_clusteralloc (ip=0xc0db0100, cg=116, bpref=3830648, len=14) at ../../ufs/ffs/ffs_alloc.c:1179 1179 panic("ffs_clusteralloc: map mismatch"); (kgdb) print *ip $1 = {i_lock = {lk_interlock = {lock_data = 0}, lk_flags = 1024, lk_sharecount = 0, lk_waitcount = 0, lk_exclusivecount = 1, lk_prio = 8, lk_wmesg = 0xc022623a "inode", lk_timo = 0, lk_lockholder = 478}, i_hash = {le_next = 0x0, le_prev = 0xc0b45d38}, i_vnode = 0xc8f5aa00, i_devvp = 0xc83dbd40, i_flag = 143, i_dev = 0xc0b6be00, i_number = 809794, i_effnlink = 1, inode_u = {fs = 0xc0b6a000, e2fs = 0xc0b6a000}, i_dquot = { 0x0, 0x0}, i_modrev = 1759102206296, i_lockf = 0x0, i_count = 0, i_endoff = 0, i_diroff = 0, i_offset = 0, i_ino = 0, i_reclen = 0, i_spare = {0, 0, 0, 0}, i_din = {di_mode = 33188, di_nlink = 1, di_u = { oldids = {0, 0}, inumber = 0}, di_size = 196452352, di_atime = 942168222, di_atimensec = 0, di_mtime = 942167624, di_mtimensec = 0, di_ctime = 942167624, di_ctimensec = 0, di_db = { 3363320, 3363328, 3363336, 3363344, 3363352, 3363360, 3363368, 3363376, 3363384, 3363392, 3363400, 3363408}, di_ib = {3797336, 3903352, 0}, di_flags = 0, di_blocks = 383904, di_gen = 1801554013, di_uid = 0, (kgdb) print *fs $3 = {fs_firstfield = 0, fs_unused_1 = 0, fs_sblkno = 16, fs_cblkno = 24, fs_iblkno = 32, fs_dblkno = 1024, fs_cgoffset = 2048, fs_cgmask = -1, fs_time = 942168235, fs_size = 17106170, fs_dsize = 16578961, fs_ncg = 523, fs_bsize = 8192, fs_fsize = 1024, fs_frag = 8, fs_minfree = 8, fs_rotdelay = 0, fs_rps = 60, fs_bmask = -8192, fs_fmask = -1024, fs_bshift = 13, fs_fshift = 10, fs_maxcontig = 15, fs_maxbpg = 2048, fs_fragshift = 3, fs_fsbtodb = 1, fs_sbsize = 2048, fs_csmask = -512, fs_csshift = 9, fs_nindir = 2048, fs_inopb = 64, fs_nspf = 2, fs_optim = 0, fs_npsect = 4096, fs_interleave = 1, fs_trackskew = 0, fs_id = {938721534, 1833775959}, fs_csaddr = 1024, fs_cssize = 9216, fs_cgsize = 6144, fs_ntrak = 1, fs_nsect = 4096, fs_spc = 4096, fs_ncyl = 8353, fs_cpg = 16, fs_ipg = 7936, fs_fpg = 32768, fs_cstotal = {cs_ndir = 24416, cs_nbfree = 516378, cs_nifree = 3945722, cs_nffree = 63650}, fs_fmod = 0 '\000', fs_clean = 0 '\000', fs_ronly = 0 '\000', fs_flags = 2 '\002', fs_fsmnt = "/usr", '\000' , fs_cgrotor = 426, fs_csp = {0xc0b8a000, 0xc0b8c000, 0x0 }, fs_maxcluster = 0xc0b8c400, fs_cpc = 0, fs_opostbl = {{0, 0, 0, 0, 0, 0, 0, 0} }, fs_sparecon = {0 }, fs_contigsumsize = 15, fs_maxsymlinklen = 60, fs_inodefmt = 2, fs_maxfilesize = 8796093022207, fs_qbmask = 8191, fs_qfmask = 1023, fs_state = 0, fs_postblformat = 1, fs_nrpos = 1, fs_postbloff = 0, fs_rotbloff = 0, fs_magic = 72020, fs_space = ""} (kgdb) print *cgp $6 = {cg_firstfield = 0, cg_magic = 590421, cg_time = 942168235, cg_cgx = 116, cg_ncyl = 16, cg_niblk = 7936, cg_ndblk = 32768, cg_cs = {cs_ndir = 50, cs_nbfree = 373, cs_nifree = 7720, cs_nffree = 47}, cg_rotor = 29688, cg_frotor = 29688, cg_irotor = 206, cg_frsum = {0, 2, 0, 0, 0, 1, 2, 4}, cg_btotoff = 168, cg_boff = 232, cg_iusedoff = 264, cg_freeoff = 1256, cg_nextfreeoff = 5924, cg_clustersumoff = 5348, cg_clusteroff = 5412, cg_nclusterblks = 4096, cg_sparecon = {0 }, cg_space = "\001"} (kgdb) print run $7 = 14 (kgdb) (kgdb) print i $8 = 11 (kgdb) print got $9 = 3786 (kgdb) (kgdb) print got - run + i $10 = 3783 (kgdb) -- regards/ Joakim To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message