tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: rm(1) CPU hog
On Wed, Jul 01, 2015 at 06:38:54PM +0000, Taylor R Campbell wrote:
> Date: Wed, 1 Jul 2015 15:19:53 +0200
> From: Edgar =?iso-8859-1?B?RnXf?= <ef%math.uni-bonn.de@localhost>
>
> I just noticed a rm(1) of a 6.4G file (WAPBL 16k FFSv2) taking 35 seconds.
> The astonishing fact was the undelying disc being idle (according to iostat)
> and rm being CPU-bound.
>
> The problem is that to set a bound on the size of wapbl transactions,
> deleting an inode truncates it -- and commits the truncation to the
> journal -- one indirect block at a time, even if the file is sparse in
> which case most such truncations don't actually do anything.
>
> There's a patch floating around to ascertain how much space is left in
> the current transaction and truncate as many blocks as will fit in it
> at a time.
I thought that patch had been committed...
> I think a better approach would be to truncate only blocks
> that are actually allocated, and skip holes, but I haven't finished
> the patch to do that.
Is there a way that partially-handled truncates get finished at
recovery time, or do files thus affected get left in an undefined
intermediate state?
--
David A. Holland
dholland%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index