* Andy Lutomirski <l...@amacapital.net> wrote: > >> */ > >> unsigned long stack[64]; > >> > >> Last I checked, 0x100 != 64. Also, wow, this is kind of disgusting. :) > > > > > > Seems to be unused: I commented it out on "defconfig" build > > and got no build errors. > > It's used. On 32-bit, NMIs don't use task gates (I don't know why),
So task gates were a sexy hardware acceleration feature, eons ago, and we used to rely on them a lot, but why should we use task gates for NMIs on modern CPUs? NMIs are performance critical for profiling, and task gates are more expensive than interrupt gates. Task gates are also an x86 anachronism whose performance might change negatively in the future. We don't use 32-bit segmentation tricks for similar reasons. The only place where we use task gates is the double fault handler, and we only do it because we must: if pagetables are screwed up then we really have to create a new context from scratch to be able to print debug info. Thanks, Ingo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/