On Tue, May 11, 2010 at 07:33:00PM +0200, Dag-Erling Sm??rgrav wrote:
> Ivan Voras <ivo...@freebsd.org> writes:
> > Just wondering - does the quota code have that much impact on the file
> > system that it's still today left out of the GENERIC kernel?
> 
> It adds quite a bit of code to pretty much every UFS VOP.  I haven't
> benchmarked or profiled it, so I have no idea how much it affects
> performance, but I suspect it's noticeable for disk-intensive workloads
> such as busy databases.

No, it does not. Essentially, it adds one or two function calls per
vop that allocate or deallocate blocks or inodes, and the function
bodies verify two array members and return if those are NULL. My
assertion is that this overhead is negligible.

I intended to move quota code to kern/vfs_quota.c, because it actually
is fs-agnostic, and can be used by any fs that does block and inode-based
allocation of some space. In particular, tmpfs could use it. After that,
I planned to enable option QUOTA for GENERIC.

Also please note that ufs_quota.c is compiled into the kernel
unconditionally (or rather, conditional on option UFS), and only hooks
are placed under #ifdef QUOTA.

Attachment: pgpzLj9ZyKRzL.pgp
Description: PGP signature

Reply via email to