Re: [patch 07/15] Basic x86_64 support

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

 



On Sun, Aug 07, 2005 at 10:48:02AM +1000, Keith Owens wrote:
> 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.

Works for me.  I'll post something vs 2.6.13-rc6 later today hopefully
that does the rename.

-- 
Tom Rini
http://gate.crashing.org/~trini/
-
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