Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys/kern

On Sun, Jan 22, 2012 at 03:48:51AM +0000, Mindaugas Rasiukevicius wrote:
> Module Name:  src
> Committed By: rmind
> Date:         Sun Jan 22 03:48:51 UTC 2012
> Modified Files:
>       src/sys/kern: kern_fileassoc.c
> Log Message:
> fileassoc_file_delete: pre-check whether fileassoc was used and thus avoid
> acquiring kernel-lock, which damages sys_unlink() performance.

Erm... looking at the file the locking in there looks decidedly dubious.

1) There doesn't seem to be any locking on the hash table.
2) It isn't clear why the KERNEL_LOCK was acquired in one specific path.
3) If fileassoc_file_delete() is expected to remove all references for
   a vnode, something external must have forced the state of the vnode.
   (otherwise the stuff might be added - inc. global init - while this
   code is being called.

OTOH I've actually NFI what the code in this file is for!


David Laight:

Home | Main Index | Thread Index | Old Index