Date: Tue, 6 Aug 2013 18:22:04 +0400 From: Mitya <trtrmitya@gmail.com> To: Kirk McKusick <mckusick@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r253974 - head/sys/ufs/ffs Message-ID: <ACA8439F-A1CD-4D18-9858-EF1B9DA13DFD@FreeBSD.org> In-Reply-To: <201308052202.r75M2jtk048345@svn.freebsd.org> References: <201308052202.r75M2jtk048345@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Does it fix a problem on recent 9-STABLE that process writing to almost-full partition eats 100% CPU and writes 1MB/sec? It has SU enabled but no SU+J. I observed that today after upgrading to 9.2-BETA2 from ~1 year old 9-STABLE. Thanks. On 06.08.2013, at 2:02, Kirk McKusick <mckusick@FreeBSD.org> wrote: > Author: mckusick > Date: Mon Aug 5 22:02:45 2013 > New Revision: 253974 > URL: http://svnweb.freebsd.org/changeset/base/253974 > > Log: > With the addition of journalled soft updates, the "newblk" structures > persist much longer than previously. Historically we had at most 100 > entries; now the count may reach a million. With the increased count > we spent far too much time looking them up in the grossly undersized > newblk hash table. Configure the newblk hash table to accurately reflect > the number of entries that it must index. > > Reviewed by: kib > Tested by: Peter Holm > MFC after: 2 weeks > > Modified: > head/sys/ufs/ffs/ffs_softdep.c > > Modified: head/sys/ufs/ffs/ffs_softdep.c > ============================================================================== > --- head/sys/ufs/ffs/ffs_softdep.c Mon Aug 5 22:01:16 2013 (r253973) > +++ head/sys/ufs/ffs/ffs_softdep.c Mon Aug 5 22:02:45 2013 (r253974) > @@ -2393,7 +2393,7 @@ softdep_initialize() > max_softdeps = desiredvnodes * 4; > pagedep_hashtbl = hashinit(desiredvnodes / 5, M_PAGEDEP, &pagedep_hash); > inodedep_hashtbl = hashinit(desiredvnodes, M_INODEDEP, &inodedep_hash); > - newblk_hashtbl = hashinit(desiredvnodes / 5, M_NEWBLK, &newblk_hash); > + newblk_hashtbl = hashinit(max_softdeps / 2, M_NEWBLK, &newblk_hash); > bmsafemap_hashtbl = hashinit(1024, M_BMSAFEMAP, &bmsafemap_hash); > i = 1 << (ffs(desiredvnodes / 10) - 1); > indir_hashtbl = malloc(i * sizeof(indir_hashtbl[0]), M_FREEWORK, > _______________________________________________ > svn-src-all@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/svn-src-all > To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ACA8439F-A1CD-4D18-9858-EF1B9DA13DFD>
