[PATCH 2/2] s390x: uncouple virtual and physical address spaces

Alexander Gordeev agordeev at linux.ibm.com
Tue Dec 5 07:01:13 PST 2023


On Tue, Dec 05, 2023 at 07:24:56AM +0000, HAGIO KAZUHITO(萩尾 一仁) wrote:

Hi HAGIO!

...
> > +struct os_info_entry {
> > +	union {
> > +		__u64	addr;
> > +		__u64	val;
> > +	};
> > +	__u64	size;
> > +	__u32	csum;
> > +} __attribute__((packed));
> > +
> > +struct os_info {
> > +	__u64	magic;
> > +	__u32	csum;
> > +	__u16	version_major;
> > +	__u16	version_minor;
> > +	__u64	crashkernel_addr;
> > +	__u64	crashkernel_size;
> > +	struct	os_info_entry entry[10];
> > +	__u8	reserved[3864];
> > +} __attribute__((packed));
> 
> are the __u* types defined on s390x?  at least make with TARGET=s390xx 
> on x86_64 by my test fails.

It does not fail for s390x, but it should not be there anyway, indeed.
I will post v2 as a follow-up to this mail.

> $ make LINKTYPE=dynamic TARGET=s390xx
> ...
> cc  -g -O2 -Wall -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE 
> -D_LARGEFILE64_SOURCE -D__s390x__ -U__x86_64__ -c -o ./arch/s390x.o 
> arch/s390x.c
> arch/s390x.c:80:3: error: unknown type name '__u64'
>     __u64 addr;
>     ^~~~~
> arch/s390x.c:81:3: error: unknown type name '__u64'
>     __u64 val;
>     ^~~~~
> ...
> make: *** [Makefile:111: arch/s390x.o] Error 1
> 
> ("s390xx" is strange but Makefile needs it somehow...)
...
> > @@ -1869,6 +1878,7 @@ struct symbol_table {
> >   	 * vmalloc_start address on s390x arch
> >   	 */
> >   	unsigned long long	high_memory;
> > +	unsigned long long	__kernel_base;
> 
> Is SYMBOL(__kernel_base) not used?  If it will be introduced and used 
> later, please add it at that time.

That is a leftover. Removed in v2.

> Thanks,
> Kazu

Thanks, Kazu!



More information about the kexec mailing list