In message <[EMAIL PROTECTED]>, Dag-Erling =?iso-8859-1?Q?Sm=F8rgrav?= writes:

>This is probably what's killing my customer up north:

>There is no o->objhead because no object was ever retrieved and
>Fetch() returned early.
>
>Why is o->busy protected by o->objhead->mtx?  Why not have a mutex
>directly in struct object instead?

o->busy is protected by the objhead mutex because otherwise we would have
to grab all the objects mutexes in the hash lookup.

The busy flag is very seldomly manipulated, and this is much more efficient.

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
[EMAIL PROTECTED]         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.
_______________________________________________
varnish-dev mailing list
[email protected]
http://projects.linpro.no/mailman/listinfo/varnish-dev

Reply via email to