On Mon, 2018-04-30 at 11:59 -0600, Toshi Kani wrote: > ioremap() supports pmd mappings on x86-PAE. However, kernel's pmd > tables are not shared among processes on x86-PAE. Therefore, any > update to sync'd pmd entries need re-syncing. Freeing a pte page > also leads to a vmalloc fault and hits the BUG_ON in vmalloc_sync_one(). > > Disable free page handling on x86-PAE. pud_free_pmd_page() and > pmd_free_pte_page() simply return 0 if a given pud/pmd entry is present. > This assures that ioremap() does not update sync'd pmd entries at the > cost of falling back to pte mappings. > > Fixes: 28ee90fe6048 ("x86/mm: implement free pmd/pte page interfaces") > Reported-by: Joerg Roedel <joro@xxxxxxxxxx> Hi Joerg, Does it solve your problem? Let me know if you have any issue with the series. Thanks, -Toshi