Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-25 Thread Matthew Dillon
:So, your great deal of time and effort over the last week is more important :than our time and effort over the last few months? : :Cheers, :-Peter :-- :Peter Wemm - [EMAIL PROTECTED]; [EMAIL PROTECTED]; [EMAIL PROTECTED] And how the hell did you come to that conclusion? Nothing I have done

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-25 Thread Peter Wemm
Matthew Dillon wrote: > > : > :On Mon, 25 Feb 2002, Matthew Dillon wrote: > : > :> Unless an unforseen problem arises, I am going to commit this tomorrow > :> and then start working on a cleanup patch. I have decided to > : > :Please wait for jhb's opinion on it. He seems to be offline

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Matthew Dillon
:> :is written out, so I don't see much point in changing this do the masking :> :in software and avoid the soft interrupt. :> :> I have no idea what you are talking about Jake. Could you supply :> some context? : :Sorry, maybe I got ahead of myself. I was responding to your suggestion

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Jake Burkholder
Apparently, On Sun, Feb 24, 2002 at 09:03:53PM -0800, Matthew Dillon said words to the effect of; > :... > :interrupts; hard interrupts are rarely masked. The queueing is written > :in assmebler and runs outside of the kernel so it is fast. Traps in > :general are fast because they don'

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Matthew Dillon
:Removing cli and sti from the critical functions saves us 300 ns on I'm going to make a correction here... I didn't realize I had WITNESS turned on. 300ns of savings makes a lot of sense when WITNESS is turned on because witness manipulates a number of spin locks. I am goi

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Matthew Dillon
:... :interrupts; hard interrupts are rarely masked. The queueing is written :in assmebler and runs outside of the kernel so it is fast. Traps in :general are fast because they don't touch memory until the trapframe :is written out, so I don't see much point in changing this do the masking :in s

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Jake Burkholder
Apparently, On Sun, Feb 24, 2002 at 11:12:22AM -0800, Matthew Dillon said words to the effect of; > NOTES: > > I would like to thank Bruce for supplying the sample code that allowed > me to do this in a day instead of several days. > > * debug.critical_mode sysctl. This wil

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Andrew Gallatin
Matt, Thanks for the great explanation! Hopefully, I'll get a chance to try this for alpha (though I won't mind if somebody beats me to it). I've also been meaning to get iprobe (kernel profiler) going again too, to find out why -current on alpha sucks so badly right now. (your gettimeofday()

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Matthew Dillon
:I think you're making critical_enter()/critical_exit() cheaper by not :actually messing with the interrupt hardware when they're called. :Very much like what we do in 4-stable. : :Instead, you set/clear a per-cpu flag (or incr/decr a counter). If an :interrupt comes in when you're inside a criti

Re: Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Andrew Gallatin
I'm not fluent in x86 asm, so can you confirm for me what you're attempting to do here? I think you're making critical_enter()/critical_exit() cheaper by not actually messing with the interrupt hardware when they're called. Very much like what we do in 4-stable. Instead, you set/clear a per-cpu

Patch for critical_enter()/critical_exit() & interrupt assembly revamp, please review!

2002-02-24 Thread Matthew Dillon
NOTES: I would like to thank Bruce for supplying the sample code that allowed me to do this in a day instead of several days. * debug.critical_mode sysctl. This will not be in the final commit, nor will any of the code that tests the variable. The final commit will use