Re: [patch 07/15] Basic x86_64 support

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

 



On Thu, 4 Aug 2005 14:39:00 +0200, 
Andi Kleen <[email protected]> wrote:
>> > That doesn't make much sense here. tasklet will only run when interrupts
>> > are enabled, and that is much later. You could move it to there.
>> 
>> Where?  Keep in mind it's really only x86_64 that isn't able to break
>> sooner.
>
>The local_irq_enable() call in init/main.c:start_kernel()
>
>If you want to run gdb earlier you need to do it without a tasklet.
>
>> > > --- linux-2.6.13-rc3/include/asm-x86_64/hw_irq.h~x86_64-lite	2005-07-29 13:19:10.000000000 -0700
>> > > +++ linux-2.6.13-rc3-trini/include/asm-x86_64/hw_irq.h	2005-07-29 13:19:10.000000000 -0700
>> > > @@ -55,6 +55,7 @@ struct hw_interrupt_type;
>> > >  #define TASK_MIGRATION_VECTOR	0xfb
>> > >  #define CALL_FUNCTION_VECTOR	0xfa
>> > >  #define KDB_VECTOR	0xf9
>> > > +#define KGDB_VECTOR	0xf8
>> > 
>> > I already allocated these vectors for something else.
>> 
>> Is there another we can use?  Just following what looked to be the
>> logical order.
>
>How about you use KDB_VECTOR and rename it to DEBUG_VECTOR
>and then just check if kgdb is currently active? 
>
>KDB can do the same.
>
>I changed the assignment in my tree like this:
>
>#define SPURIOUS_APIC_VECTOR    0xff
>#define ERROR_APIC_VECTOR       0xfe
>#define RESCHEDULE_VECTOR       0xfd
>#define CALL_FUNCTION_VECTOR    0xfc
>#define KDB_VECTOR              0xfb    /* reserved for KDB */
>#define THERMAL_APIC_VECTOR     0xfa
>/* 0xf9 free */
>#define INVALIDATE_TLB_VECTOR_END       0xf8
>#define INVALIDATE_TLB_VECTOR_START     0xf0    /* f0-f8 used for TLB flush */

Don't call it {KDB,KGDB,DEBUG}_VECTOR, call it NMI_VECTOR, which is
what it really is.  default_do_nmi() determines if the nmi is due to a
debugger or some other event.  That requires the debuggers to record if
they are expecting their own nmi, putting all the load on the
debuggers, where it belongs.

IOW, add NMI_VECTOR to the base code, then add debugger support on top of
NMI_VECTOR.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux