On Mar 9, 2015 7:46 AM, "Ingo Molnar" <[email protected]> wrote: > > > * Andy Lutomirski <[email protected]> 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.
Makes sense. I play with 32-bit stuff so rarely that I have very little idea how it performs. --Andy -- 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/

