On Thu, 05 Jan, at 05:12:42PM, Dave Young wrote: > On 12/22/16 at 11:23am, Nicolai Stange wrote: > > Before invoking the arch specific handler, efi_mem_reserve() reserves > > the given memory region through memblock. > > > > efi_mem_reserve() can get called after mm_init() though -- through > > efi_bgrt_init(), for example. After mm_init(), memblock is dead and should > > not be used anymore. > > It did not fail during previous test so we did not catch this bug, if memblock > can not be used after mm_init(), IMHO it should fail instead of silently succeed. This must literally be the fifth time or so that I've been caught out by this over the years because there's no hard error if you call the memblock code after slab and co. are up. MM folks, is there some way to catch these errors without requiring the sprinkling of slab_is_available() everywhere? > Matt, can we move the efi_mem_reserve to earlier code for example in > efi_memblock_x86_reserve_range just after reserving the memmap? No, it *needs* to be callable from efi_bgrt_init(), because you only want to reserve those regions if you have the BGRT driver available. -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html