Date: Thu, 18 Feb 2010 09:31:56 -0500 From: John Baldwin <jhb@freebsd.org> To: freebsd-current@freebsd.org Cc: Alexander Zagrebin <alexz@visp.ru> Subject: Re: ZFS: statfs and recordsize problem Message-ID: <201002180931.56374.jhb@freebsd.org> In-Reply-To: <8630BB25CB8C41E8BF036431AAC9B0A9@vosz.local> References: <8630BB25CB8C41E8BF036431AAC9B0A9@vosz.local>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 18 February 2010 7:39:28 am Alexander Zagrebin wrote: > I have noticed, that statfs called for ZFS file systems, > returns the value of FS's recordsize property in both f_bsize and > f_iosize. > > It's a problem for some software. > For example, squid uses block size of cache's file system to calculate > the space occupied by file. > So by default it considers that any small file uses 128KB of a cache > (when default value of recordsize is used), though really this file > may use 512B only. > This miscalculation leads to unreasonable cleaning of a cache. > > IMHO the behavior of statfs have to be changed, as ZFS uses variable > (up to recordsize) block sizes. > It must return 512 as f_bsize and recordsize as f_iosize. > One of possible solutions is the attached patch. > Could somebody look it? If you don't get a reply, submit it as a PR so it doesn't get lost. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201002180931.56374.jhb>