[Crash-utility] [PATCH v2 0/6] Second phase of future support for x86_64 5-level page tables
Dou Liyang
douly.fnst at cn.fujitsu.com
Wed Jan 17 09:02:51 UTC 2018
Hi Dave,
[...]
> Hello Dou,
>
> Completing my review may take me longer than expected due to other tasks
> I have to take care of first. Please excuse my delay.
>
Aha, never mind! As you said, this patchset also has some problem,
I will do more test and resend a new version.
> However, I did notice one problem w/respect to your changes to defs.h.
> When modifying any exported data structure in defs.h, be aware that the
> change may break extension modules that have been previously compiled
> against older versions of defs.h.
Oops! I did not consider with this, really thank you for your remind.
> For example, the following changes to the x86_64 machine_specific data
> structure would break extension modules that have been previously compiled
> against earlier versions of defs.h -- if the extension module uses fields in
> the machine_specific data structure that come after the members that you
> have removed:
>
> @@ -5747,10 +5735,6 @@ struct machine_specific {
> ulong modules_vaddr;
> ulong modules_end;
> ulong phys_base;
> - char *pml4;
> - char *upml;
> - ulong last_upml_read;
> - ulong last_pml4_read;
> char *irqstack;
> ulong irq_eframe_link;
> struct x86_64_pt_regs_offsets pto;
> @@ -5765,6 +5749,7 @@ struct machine_specific {
> ulong kernel_image_size;
> ulong physical_mask_shift;
> ulong pgdir_shift;
> + ulong ptrs_per_pgd;
> char *p4d;
> ulong last_p4d_read;
> struct ORC_data orc;
>
> So in the situation above:
>
> (1) Please do not remove the pml4, upml, last_upml_read and last_pml4_read members.
> (You could add an "/* obsolete */" comment after them if you'd like.)
> (2) When adding a new member such as ptrs_per_pgd above, please place it at the
> end of the machine_specific data structure.
>
> That way, the member offsets of the original structure members would not change
> and previously compiled extension modules would be unaffected.
>
Yes, Understood! I will check that.
Thanks,
dou
More information about the Crash-utility
mailing list