[PATCH] makedumpfile: s390x: Allow large page and change override bits

Atsushi Kumagai kumagai-atsushi at mxc.nes.nec.co.jp
Fri Mar 1 05:53:45 EST 2013


Hello Michael,

On Thu, 28 Feb 2013 16:31:32 +0100
Michael Holzheu <holzheu at linux.vnet.ibm.com> wrote:

> Currently makedumpfile fails if large page or change override bits
> are set for region or segment table entries:
> 
> Excluding free pages               : [  0 %]
> _kl_rsg_table_deref_s390x: Bad region/segment table entry.
> readmem: Can't convert a virtual address(3d1015fc028) to physical address.
> readmem: type_addr: 0, addr:3d1015fc028, size:8
> reset_bitmap_of_free_pages: Can't get prev list_head.
> _kl_rsg_table_deref_s390x: Bad region/segment table entry.
> readmem: Can't convert a virtual address(3d1015fc028) to physical address.
> readmem: type_addr: 0, addr:3d1015fc028, size:8
> reset_bitmap_of_free_pages: Can't get prev list_head.
> makedumpfile Failed.
> 
> Large page support is already implemented for the makedumpfile page table
> walk. Only the check is invalid. To fix this we now allow the bits in
> rsg_table_entry_bad().

Thanks, I'll merge this patch into v1.5.4.


Atsushi Kumagai
 
> Signed-off-by: Michael Holzheu <holzheu at linux.vnet.ibm.com>
> ---
>  arch/s390x.c   |    4 +++-
>  makedumpfile.h |    1 +
>  2 files changed, 4 insertions(+), 1 deletion(-)
> 
> --- a/arch/s390x.c
> +++ b/arch/s390x.c
> @@ -133,7 +133,9 @@ rsg_table_entry_bad(unsigned long entry,
>  {
>  	unsigned long mask = ~_REGION_ENTRY_INVALID
>  				& ~_REGION_ENTRY_TYPE_MASK
> -				& ~_REGION_ENTRY_LENGTH;
> +				& ~_REGION_ENTRY_LENGTH
> +				& ~_SEGMENT_ENTRY_LARGE
> +				& ~_SEGMENT_ENTRY_CO;
>  
>  	if (level)
>  		mask &= ~_REGION_ENTRY_ORIGIN;
> --- a/makedumpfile.h
> +++ b/makedumpfile.h
> @@ -617,6 +617,7 @@ do { \
>  /* Bits in the segment table entry */
>  #define _SEGMENT_ENTRY_ORIGIN	~0x7ffUL
>  #define _SEGMENT_ENTRY_LARGE	0x400
> +#define _SEGMENT_ENTRY_CO	0x100
>  #define _SEGMENT_PAGE_SHIFT	31
>  #define _SEGMENT_INDEX_SHIFT	20
>  
> 
> 
> _______________________________________________
> kexec mailing list
> kexec at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/kexec



More information about the kexec mailing list