Messages in this thread | | | Subject | Re: Kexec query about what makes sure control pages/page tables are not overwritten | From | "H. Peter Anvin" <> | Date | Mon, 11 Nov 2013 12:57:12 -0800 |
| |
It is pretty simple: the kernel exports how much text+data+bss+brk it needs, and the kernel cannot use memory outside that region until it is ready to control the address space itself.
Vivek Goyal <vgoyal@redhat.com> wrote: >Hi, > >I am staring at control page allocation logic in case of kdump and >wondering what makes sure that these pages are not overwritten by >next kernel. > >I see that for 64bit entry, control pages have the page tables needed >for second kernel. In case of crash these pages from from crash kernel >reserved region. Page allocator is very simple and that is start from >lowest crash reserved range and move higher and allocate first >available >page which is not allocated to segments. What makes sure that these >pages >are not overwritten by second kernel. > >I guess it becomes a general bootloader question. How do we make sure >bootloader prepared page tables/gdt will not be overwritten by kernel >(till kernel sets up its own page tables and gdt) and how should we do >the >allocation and placement. > >Thanks >Vivek
-- Sent from my mobile phone. Please pardon brevity and lack of formatting.
| |