On Fri, 9 Jun 2000, Alfred Perlstein wrote:
> * Alfred Perlstein <[EMAIL PROTECTED]> [000609 16:45] wrote:
> > hi,
> >
> > Is it just me or does the fact that uidinfo structures (see
> > kern/kern_proc.c) are allocated with M_WAITOK after finding them
> > fails and then inserted into the uidhash structure a race condition?
> >
> > Index: kern_proc.c
> > ===================================================================
>
> Yes, I know i forgot to put the created ones back into the list, I was
> just a bit flusteres after reading over the code. I'll have some more
> later.
With regard to sbsize itself, the test-and-branch conditions do not have
to be atomic. It really isn't that important. The incrementing does,
though, and to fix that a very lightweight mutex should be used. How
about a simplelock? That should work perfectly.
As for uidinfo itself, I feel it should be done with a mutex over
uihashtbl. It should be grabbed if the hash for the uid is not
found, tested again (to see if we lost the race), and allocated.
I can't see a way to poke holes in that, and it would be quite
efficient.
> -Alfred
--
Brian Fundakowski Feldman \ FreeBSD: The Power to Serve! /
[EMAIL PROTECTED] `------------------------------'
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message