Date: Fri, 23 Apr 2010 08:49:38 +0000 (UTC) From: Jeff Roberson <jeff@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r207105 - projects/suj/head/sys/ufs/ffs Message-ID: <201004230849.o3N8ncTQ048632@svn.freebsd.org>
index | next in thread | raw e-mail
Author: jeff Date: Fri Apr 23 08:49:38 2010 New Revision: 207105 URL: http://svn.freebsd.org/changeset/base/207105 Log: - Don't call softdep_setup routines on snapshot copies of filesystems. This leads to strange panics as we believe inodes and blocks are being freed on the real fs. Modified: projects/suj/head/sys/ufs/ffs/ffs_alloc.c Modified: projects/suj/head/sys/ufs/ffs/ffs_alloc.c ============================================================================== --- projects/suj/head/sys/ufs/ffs/ffs_alloc.c Fri Apr 23 08:49:16 2010 (r207104) +++ projects/suj/head/sys/ufs/ffs/ffs_alloc.c Fri Apr 23 08:49:38 2010 (r207105) @@ -1973,7 +1973,7 @@ ffs_blkfree(ump, fs, devvp, bno, size, i ACTIVECLEAR(fs, cg); UFS_UNLOCK(ump); mp = UFSTOVFS(ump); - if (mp->mnt_flag & MNT_SOFTDEP) + if (mp->mnt_flag & MNT_SOFTDEP && devvp->v_type != VREG) softdep_setup_blkfree(UFSTOVFS(ump), bp, bno, numfrags(fs, size), dephd); bdwrite(bp); @@ -2118,7 +2118,7 @@ ffs_freefile(ump, fs, devvp, ino, mode, fs->fs_fmod = 1; ACTIVECLEAR(fs, cg); UFS_UNLOCK(ump); - if (UFSTOVFS(ump)->mnt_flag & MNT_SOFTDEP) + if (UFSTOVFS(ump)->mnt_flag & MNT_SOFTDEP && devvp->v_type != VREG) softdep_setup_inofree(UFSTOVFS(ump), bp, ino + cg * fs->fs_ipg, wkhd); bdwrite(bp);help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201004230849.o3N8ncTQ048632>
