Benjamin Herrenschmidt <[email protected]> writes: > On Tue, 2017-05-16 at 14:56 +0530, Aneesh Kumar K.V wrote: >> +static inline pte_t *find_linux_pte(pgd_t *pgdir, unsigned long ea, >> + bool *is_thp, unsigned *hshift) >> +{ >> + VM_WARN((!arch_irqs_disabled() && !__hard_irqs_disabled()) , >> + "%s called with irq enabled\n", __func__); >> + return __find_linux_pte(pgdir, ea, is_thp, hshift); >> +} >> + > > When is arch_irqs_disabled() not sufficient ?
We can do lockless page table walk in interrupt handlers where we find MSR_EE = 0. I was not sure we mark softenabled 0 there. What I wanted to indicate in the patch is that we are safe with either softenable = 0 or MSR_EE = 0 -aneesh
