> > The point is that the IDT address itself should not be mutable state if > > it can be at all avoided. > > Hmm, maybe we can do it. Have two counters, a debug_idt_ctr and a > trace_idt_ctr, then have a function that basically does this: > > if (this_cpu_read(debug_idt_ctr)) > load_idt(&nmi_idt_descr); /* probably should rename to > debug_idt_descr) */ > else if (trace_idt_ctr) > load_idt(&trace_idt_descr); > else > load_idt(&idt_descr); > > Then all modifications of the idt would call this function.
I think it will work. I will make the patch. Seiji > > -- Steve > > N�����r��y����b�X��ǧv�^�){.n�+����{����zX����ܨ}���Ơz�&j:+v�������zZ+��+zf���h���~����i���z��w���?�����&�)ߢf��^jǫy�m��@A�a��� 0��h���i