On Wed, Aug 22, 2018 at 05:48:32PM -0700, Roland Dreier wrote:
On Fri, Dec 15, 2017 at 2:20 AM Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
This reverts commit 87e2bd898d3a79a8c609f183180adac47879a2a4 which is commit edc3b9129cecd0f0857112136f5b8b1bc1d45918 upstream.
Turns there was too many other issues with this patch to make it viable for the stable tree.
This was sort of a long time ago, but does anyone remember why this needed to be reverted from 4.4?
I tried to dig through my old emails, but could not find anything, sorry.
The reason I ask is that without this, commit 02ff2769edbc / "x86/mm/pat: Make set_memory_np() L1TF safe" in 4.4.148 is broken. That patch has
set_pud(pud, __pud(cpa->pfn | _PAGE_PSE |
massage_pgprot(pud_pgprot)));
set_pud(pud, pud_mkhuge(pfn_pud(cpa->pfn,
canon_pgprot(pud_pgprot))));
(and similarly for pmds) but pfn_pud() is operating on page frame numbers and __pud(cpa->pfn... in the old code is operating on physical addresses.
This is bad enough that 4.4.148 and all newer 4.4.y crash early in boot on some EFI systems that I have.
Ugh, not good.
For now I am re-applying the "ensure cpa->pfn only contains page frame numbers" patch, ported on top of 4.4.151.
I can try to add it back and see what blows up, want me to attempt that? :)
thanks,
greg k-h