In lib/pagewalk.c, I've been using the various forms of
{pgd,pud,pmd}_none_or_clear_bad while walking page tables as that
seemed the canonical way to do things. Lately (eg with -rc7-mm1),
these have been triggering messages like "bad pgd 0x01e3" and causing
nasty double faults. It appears this is actually triggered at the pmd
level (mm/memory.c:116), though it appears to produce the wrong
message.
Has something changed here? I'm pretty sure this used to work! Is this
not a kosher thing to do? Does it make any sense I'd repeatedly run
into a bad pmd in the middle of bash's page table right after boot?
The simple _none variant seems to work, but I worry that it's papering
over a real problem.
--
Mathematics is the supreme nostalgia of our time.
-