Re: [PATCH] local_irq_disable removal

Karim Yaghmour
2005-06-12T04:21:06Z

Daniel Walker wrote:
> Interesting .. So "cli" takes 7 cycles , "sti" takes 7 cycles. The current
> method does "lea" which takes 1 cycle, and "or" which takes 1 cycle. I'm
> not sure if there is any function call overhead .. So the soft replacment
> of cli/sti is 70% faster on a per instruction level .. So it's at least
> not any slower .. Does everyone agree on that?

The proof is in the pudding: it's not for nothing that the results
we published earlier show that the mere enabling of Adeos actually
increases Linux's performance under heavy load.

This could easily be called the Stodolsky effect. Here, have a look
at this article, it was presented at the USENIX Symposium on
Microkernels and Other Kernel Architectures ... in 1993:
http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/danner/www/OptSynch.ps
We've been referring back to this paper as early as the first public
release of Adeos ... in June 2002.

That being said, I'm not sure exactly why you guys are reinventing the
wheel. Adeos already does this soft-cli/sti stuff for you, it's been
available for a few years already, tested, and ported to a number of
architectures, and is generalized, why not just adopt it? After all,
like I've been saying for some time, it isn't mutually exclusive with
PREEMPT_RT.

Karim
--
Author, Speaker, Developer, Consultant
Pushing Embedded and Real-Time Linux Systems Beyond the Limits
http://www.opersys.com || karim@opersys.com || 1-866-677-4546