Messages in this thread | | | Date | Mon, 27 Nov 2017 09:21:28 +0100 | From | Peter Zijlstra <> | Subject | Re: [PATCH] x86/mm/kaiser: Fix IRQ entries text section mapping |
| |
On Mon, Nov 27, 2017 at 09:14:48AM +0100, Peter Zijlstra wrote: > On Sat, Nov 25, 2017 at 05:08:08PM +0100, Thomas Gleixner wrote: > > On Sat, 25 Nov 2017, Ingo Molnar wrote: > > > kaiser_add_user_map_ptrs_early(__entry_text_start, __entry_text_end, > > > __PAGE_KERNEL_RX | _PAGE_GLOBAL); > > > + kaiser_add_user_map_ptrs_early(__irqentry_text_start, __irqentry_text_end, > > > + __PAGE_KERNEL_RX | _PAGE_GLOBAL); > > > > The bad news is that this maps more stuff than actually needed: > > > > ffffffff81ab1c20 T __irqentry_text_start > > ffffffff81ab1c20 T apic_timer_interrupt > > ffffffff81ab1cf0 T x86_platform_ipi > > ffffffff81ab1dc0 T threshold_interrupt > > ffffffff81ab1e90 T deferred_error_interrupt > > ffffffff81ab1f60 T thermal_interrupt > > ffffffff81ab2030 T call_function_single_interrupt > > ffffffff81ab2100 T call_function_interrupt > > ffffffff81ab21d0 T reschedule_interrupt > > ffffffff81ab22a0 T error_interrupt > > ffffffff81ab2370 T spurious_interrupt > > ffffffff81ab2440 T irq_work_interrupt > > I'm confused though; for IDT we have that trampoline Andy did. So the > interrupt should land on the entry stack, do the switch magic and then > call the 'real' IDT entry, no? > > So why do these functions need to be mapped at all?
Aah, I see. The switch magic is in the generic macro and thus ends up in the above functions...
| |