Brian Pane wrote:

+0.99

While there are technically good reasons to require that all of
these functions be inlined (like the increased probability that
an atomic_cas based spinlock will fail and have to retry if there's
a function call in the critical path)

good point... OTOH, that slightly-increased contention rate will help expose faulty c-a-s logic sooner ;)


Too bad I didn't think about this in a previous life, but I suspect that applying a temporary hack to the apr compare-and-swap function to do a pthread_yield or equivalent would be good for testing too. I recall too well a bug in some supervisor state code that appeared to work great on my 2nd-level (virtual) MVS but would (spin-) lock up pretty soon after applying load when running on a real SMP box.





Reply via email to