On Mon, Jan 12, 2015 at 05:06:46PM +0100, Joerg Roedel wrote: > On Mon, Jan 12, 2015 at 10:29:19AM -0500, Vivek Goyal wrote: > > Kdump has the notion of backup region. Where certain parts of old kernels > > memory can be moved to a different location (first 640K on x86 as of now) > > and new kernel can make use of this memory now. > > > > So we will have to just make sure that no parts of this old page table > > fall into backup region. > > Uuh, looks like the 'iommu-with-kdump-issue' isn't complicated enough > yet ;) > Sadly, your above statement is true for all hardware-accessible data > structures in IOMMU code. I think about how we can solve this, is there > an easy way to allocate memory that is not in any backup region? Hmm..., there does not seem to be any easy way to do this. In fact, as of now, kernel does not even know where is backup region. All these details are managed by user space completely (except for new kexec_file_load() syscall). That means we are left with ugly options now. - Define per arch kexec backup regions in kernel and export it to user space and let kexec-tools make use of that deinition (instead of defining its own). That way memory allocation code in kernel can look at this backup area and skip it for certain allocations. Thanks Vivek