Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys



hi,

> On Wed, Nov 18, 2009 at 03:51:02AM +0000, YAMAMOTO Takashi wrote:
>> > Log Message:
>> > Add a kernel configuration flag, SPLDEBUG, that activates a per-CPU log
>> > of transitions to IPL_HIGH from lower IPLs.  SPLDEBUG is only available
>> > on i386 and Xen kernels, today.
>> > 
>> > 'options SPLDEBUG' adds instrumentation to spllower() and splraise() as
>> > well as routines to start/stop debugging and to record IPL transitions:
>> > spldebug_start(), spldebug_stop(), spldebug_raise(), spldebug_lower().
>> 
>> this seems too ad-hoc to me.
> 
> If you have suggestions for providing a comparable function that is less
> ad-hoc, let me know.
> 
>> - please don't put MD code like this in kern/.  IPL_ values can't be
>>   compared with >= in MI code.  return_address.9 is in man.i386.
> 
> Thanks for pointing this out.  I am not going to move it from sys/kern/,
> since it is fairly easy to make it MI.  I will compare IPL values with
> == and !=, and write an MI stub for return_address(9) that returns NULL
> on non-i386.
> 
>> - there are other places where the spl value is modified.
>>   eg. interrupt stubs, lock stubs, etc.
> 
> Code references, please?

"grep ILEVEL *.S"
eg. mutex_spin_enter, intr_lapic_ltimer, etc

> 
>> - can you explain "cpu_index(ci) > MAXCPUS" and "cpu_index(ci) >= MAXCPUS" ?
> 
> Typo.

why are these checks necessary in the first place?

YAMAMOTO Takashi

> 
> Dave
> 
> -- 
> David Young             OJC Technologies
> dyoung%ojctech.com@localhost      Urbana, IL * (217) 278-3933


Home | Main Index | Thread Index | Old Index