All of lore.kernel.org
 help / color / mirror / Atom feed
* XEN tools for ARM64 build issue
@ 2016-11-23 10:29 Andrii Anisov
  2016-11-23 10:47 ` Jan Beulich
  0 siblings, 1 reply; 12+ messages in thread
From: Andrii Anisov @ 2016-11-23 10:29 UTC (permalink / raw)
  To: xen-devel, Ian Jackson, Wei Liu, Jan Beulich


[-- Attachment #1.1: Type: text/plain, Size: 1438 bytes --]

Dear all,

Building latest XEN master branch
(58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform using
the same yocto as here
https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X
I've
faced following issue:

Maximum error count (200) exceeded

/home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
     3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
Error    4084 -

                         Object does not exist ^  (\_SB.MSUA)
/home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
     8:             If ( LLess(Arg0, NCPU) ) {
Error    4084 -

   Object does not exist ^  (NCPU)
/home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
    16:             OperationRegion ( MATR, SystemMemory, Add(\_SB.MAPA,
0), 8 )
Error    4084 -

                                 Object does not exist ^  (\_SB.MAPA)

See attached full log [log.do_compile.14752.tbz2].
The original yocto adopts iasl 20120215. I upgraded iasl to 20160527, but
nothing noticeably to me changed, see [log.do_compile.18488.tbz2].

Unfortunately I'm not really familiar with the ACPI stuff so have no ideas
about the issue.
Any suggestions?

Sincerely,
Andrii Anisov.

[-- Attachment #1.2: Type: text/html, Size: 2473 bytes --]

[-- Attachment #2: log.do_compile.14752.tbz2 --]
[-- Type: application/x-bzip-compressed-tar, Size: 28248 bytes --]

[-- Attachment #3: log.do_compile.18488.tbz2 --]
[-- Type: application/x-bzip-compressed-tar, Size: 10509 bytes --]

[-- Attachment #4: Type: text/plain, Size: 127 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-23 10:29 XEN tools for ARM64 build issue Andrii Anisov
@ 2016-11-23 10:47 ` Jan Beulich
  2016-11-23 10:59   ` Andrii Anisov
  2016-11-25 15:30   ` Julien Grall
  0 siblings, 2 replies; 12+ messages in thread
From: Jan Beulich @ 2016-11-23 10:47 UTC (permalink / raw)
  To: Andrii Anisov, Shannon Zhao; +Cc: Ian Jackson, Wei Liu, xen-devel

>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
> Building latest XEN master branch
> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform using
> the same yocto as here
> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X 
> I've
> faced following issue:
> 
> Maximum error count (200) exceeded
> 
> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>      3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
> Error    4084 -
> 
>                          Object does not exist ^  (\_SB.MSUA)

Looking at the source I see that this statement gets included for
x86 only. Are you perhaps doing a cross build of the ARM tools
on an x86 host? If so, it looks like some work would be needed to
make that work (again? not sure if it ever worked), as there are
various build host architecture conditionals in mk_dsdt.c.

Shannon, it was you who introduced this (in commit c4ac107799),
so would you please take a look?

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-23 10:47 ` Jan Beulich
@ 2016-11-23 10:59   ` Andrii Anisov
  2016-11-25 15:30   ` Julien Grall
  1 sibling, 0 replies; 12+ messages in thread
From: Andrii Anisov @ 2016-11-23 10:59 UTC (permalink / raw)
  To: Jan Beulich; +Cc: Ian Jackson, xen-devel, Wei Liu, Shannon Zhao

> Looking at the source I see that this statement gets included for
> x86 only. Are you perhaps doing a cross build of the ARM tools
> on an x86 host?
Indeed. I do.

Sincerely,
Andrii Anisov.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-23 10:47 ` Jan Beulich
  2016-11-23 10:59   ` Andrii Anisov
@ 2016-11-25 15:30   ` Julien Grall
  2016-11-25 15:52     ` Jan Beulich
  2016-11-25 15:55     ` Wei Liu
  1 sibling, 2 replies; 12+ messages in thread
From: Julien Grall @ 2016-11-25 15:30 UTC (permalink / raw)
  To: Jan Beulich, Andrii Anisov, Shannon Zhao; +Cc: Wei Liu, Ian Jackson, xen-devel

Hi all,

On 23/11/16 10:47, Jan Beulich wrote:
>>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
>> Building latest XEN master branch
>> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform using
>> the same yocto as here
>> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X
>> I've
>> faced following issue:
>>
>> Maximum error count (200) exceeded
>>
>> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
>> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>>      3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
>> Error    4084 -
>>
>>                          Object does not exist ^  (\_SB.MSUA)
>
> Looking at the source I see that this statement gets included for
> x86 only. Are you perhaps doing a cross build of the ARM tools
> on an x86 host? If so, it looks like some work would be needed to
> make that work (again? not sure if it ever worked), as there are
> various build host architecture conditionals in mk_dsdt.c.

I gave a look at this error, I had in mind to replace all the #if 
defined(__*__) by the CONFIG_* equivalent.

However, the CONFIG_* are not available for the tools. I guess we need 
to add them in the tools config.h. Any opinions?

Cheers,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-25 15:30   ` Julien Grall
@ 2016-11-25 15:52     ` Jan Beulich
  2016-11-25 17:00       ` Julien Grall
  2016-11-25 15:55     ` Wei Liu
  1 sibling, 1 reply; 12+ messages in thread
From: Jan Beulich @ 2016-11-25 15:52 UTC (permalink / raw)
  To: Julien Grall; +Cc: Ian Jackson, xen-devel, Shannon Zhao, Wei Liu, Andrii Anisov

>>> On 25.11.16 at 16:30, <julien.grall@arm.com> wrote:
> On 23/11/16 10:47, Jan Beulich wrote:
>>>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
>>> Building latest XEN master branch
>>> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform using
>>> the same yocto as here
>>> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X 
>>> I've
>>> faced following issue:
>>>
>>> Maximum error count (200) exceeded
>>>
>>> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
>>> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>>>      3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
>>> Error    4084 -
>>>
>>>                          Object does not exist ^  (\_SB.MSUA)
>>
>> Looking at the source I see that this statement gets included for
>> x86 only. Are you perhaps doing a cross build of the ARM tools
>> on an x86 host? If so, it looks like some work would be needed to
>> make that work (again? not sure if it ever worked), as there are
>> various build host architecture conditionals in mk_dsdt.c.
> 
> I gave a look at this error, I had in mind to replace all the #if 
> defined(__*__) by the CONFIG_* equivalent.
> 
> However, the CONFIG_* are not available for the tools. I guess we need 
> to add them in the tools config.h. Any opinions?

The CONFIG_* values are available in the Makefile (from
config/arm*.mk). I think it would be better if the tool was told
via command line option what architecture to build tables for.
That would imply converting the problematic #if-s to if()s. Of
course the per-arch #include-s at the top may be a problem
here, but then again I'm not convinced the full xen/arch-arm.h
is really needed here (I'm pretty sure including
xen/hvm/hvm_info_table.h would cause no issue for ARM, the
more that nominally this is an arch-independent header anyway).

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-25 15:30   ` Julien Grall
  2016-11-25 15:52     ` Jan Beulich
@ 2016-11-25 15:55     ` Wei Liu
  2016-11-25 17:18       ` Julien Grall
  1 sibling, 1 reply; 12+ messages in thread
From: Wei Liu @ 2016-11-25 15:55 UTC (permalink / raw)
  To: Julien Grall
  Cc: Wei Liu, Ian Jackson, xen-devel, Jan Beulich, Shannon Zhao,
	Andrii Anisov

On Fri, Nov 25, 2016 at 03:30:44PM +0000, Julien Grall wrote:
> Hi all,
> 
> On 23/11/16 10:47, Jan Beulich wrote:
> >>>>On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
> >>Building latest XEN master branch
> >>(58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform using
> >>the same yocto as here
> >>https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X
> >>I've
> >>faced following issue:
> >>
> >>Maximum error count (200) exceeded
> >>
> >>/home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
> >>gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
> >>     3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
> >>Error    4084 -
> >>
> >>                         Object does not exist ^  (\_SB.MSUA)
> >
> >Looking at the source I see that this statement gets included for
> >x86 only. Are you perhaps doing a cross build of the ARM tools
> >on an x86 host? If so, it looks like some work would be needed to
> >make that work (again? not sure if it ever worked), as there are
> >various build host architecture conditionals in mk_dsdt.c.
> 
> I gave a look at this error, I had in mind to replace all the #if
> defined(__*__) by the CONFIG_* equivalent.
> 
> However, the CONFIG_* are not available for the tools. I guess we need to
> add them in the tools config.h. Any opinions?

I would rather we limit the scope to libacpi.

How do you cross-compile tools?

If CONFIG_ARM_64 is usable within Makefile, we can do something like:

 MKDSDT_CFLAGS-$(CONFIG_ARM_64) = -DCONFIG_ARM_64
 MKDSDT_CFLAGS-$(CONFIG_X86) = -DCONFIG_X86

Then add MKDIST_CFLAGS-y to mkdsdt's build rune.

Change mkdsdt.c source code accordingly.


> 
> Cheers,
> 
> -- 
> Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-25 15:52     ` Jan Beulich
@ 2016-11-25 17:00       ` Julien Grall
  2016-11-25 17:59         ` Julien Grall
  0 siblings, 1 reply; 12+ messages in thread
From: Julien Grall @ 2016-11-25 17:00 UTC (permalink / raw)
  To: Jan Beulich; +Cc: Ian Jackson, xen-devel, Shannon Zhao, Wei Liu, Andrii Anisov

Hi Jan,

On 25/11/16 15:52, Jan Beulich wrote:
>>>> On 25.11.16 at 16:30, <julien.grall@arm.com> wrote:
>> On 23/11/16 10:47, Jan Beulich wrote:
>>>>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
>>>> Building latest XEN master branch
>>>> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform using
>>>> the same yocto as here
>>>> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X
>>>> I've
>>>> faced following issue:
>>>>
>>>> Maximum error count (200) exceeded
>>>>
>>>> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
>>>> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>>>>      3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
>>>> Error    4084 -
>>>>
>>>>                          Object does not exist ^  (\_SB.MSUA)
>>>
>>> Looking at the source I see that this statement gets included for
>>> x86 only. Are you perhaps doing a cross build of the ARM tools
>>> on an x86 host? If so, it looks like some work would be needed to
>>> make that work (again? not sure if it ever worked), as there are
>>> various build host architecture conditionals in mk_dsdt.c.
>>
>> I gave a look at this error, I had in mind to replace all the #if
>> defined(__*__) by the CONFIG_* equivalent.
>>
>> However, the CONFIG_* are not available for the tools. I guess we need
>> to add them in the tools config.h. Any opinions?
>
> The CONFIG_* values are available in the Makefile (from
> config/arm*.mk). I think it would be better if the tool was told
> via command line option what architecture to build tables for.
> That would imply converting the problematic #if-s to if()s. Of
> course the per-arch #include-s at the top may be a problem
> here, but then again I'm not convinced the full xen/arch-arm.h
> is really needed here (I'm pretty sure including
> xen/hvm/hvm_info_table.h would cause no issue for ARM, the
> more that nominally this is an arch-independent header anyway).

FYI, I am only planning to fix the compilation issue as this is a 
problem for some user.

Regarding hvm/hvm_info_table.h, It contains few things that are x86 
specific (such as the PFN).

Furthermore, I don't think this header should be included on ARM because 
it defines HVM_MAX_VCPUS and may cause confusion with GUEST_MAX_VCPUS 
the correct value for ARM guests.

Regards,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-25 15:55     ` Wei Liu
@ 2016-11-25 17:18       ` Julien Grall
  0 siblings, 0 replies; 12+ messages in thread
From: Julien Grall @ 2016-11-25 17:18 UTC (permalink / raw)
  To: Wei Liu; +Cc: xen-devel, Shannon Zhao, Ian Jackson, Jan Beulich, Andrii Anisov

Hi Wei,

On 25/11/16 15:55, Wei Liu wrote:
> On Fri, Nov 25, 2016 at 03:30:44PM +0000, Julien Grall wrote:
>> Hi all,
>>
>> On 23/11/16 10:47, Jan Beulich wrote:
>>>>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
>>>> Building latest XEN master branch
>>>> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform using
>>>> the same yocto as here
>>>> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X
>>>> I've
>>>> faced following issue:
>>>>
>>>> Maximum error count (200) exceeded
>>>>
>>>> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
>>>> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>>>>     3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
>>>> Error    4084 -
>>>>
>>>>                         Object does not exist ^  (\_SB.MSUA)
>>>
>>> Looking at the source I see that this statement gets included for
>>> x86 only. Are you perhaps doing a cross build of the ARM tools
>>> on an x86 host? If so, it looks like some work would be needed to
>>> make that work (again? not sure if it ever worked), as there are
>>> various build host architecture conditionals in mk_dsdt.c.
>>
>> I gave a look at this error, I had in mind to replace all the #if
>> defined(__*__) by the CONFIG_* equivalent.
>>
>> However, the CONFIG_* are not available for the tools. I guess we need to
>> add them in the tools config.h. Any opinions?
>
> I would rather we limit the scope to libacpi.
>
> How do you cross-compile tools?
>
> If CONFIG_ARM_64 is usable within Makefile, we can do something like:
>
>  MKDSDT_CFLAGS-$(CONFIG_ARM_64) = -DCONFIG_ARM_64
>  MKDSDT_CFLAGS-$(CONFIG_X86) = -DCONFIG_X86
>
> Then add MKDIST_CFLAGS-y to mkdsdt's build rune.
>
> Change mkdsdt.c source code accordingly.

This would work. I was actually expecting a nicer way :).

I will prepare a patch based on this suggestion.

Cheers,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-25 17:00       ` Julien Grall
@ 2016-11-25 17:59         ` Julien Grall
  2016-11-28  8:02           ` Jan Beulich
  0 siblings, 1 reply; 12+ messages in thread
From: Julien Grall @ 2016-11-25 17:59 UTC (permalink / raw)
  To: Jan Beulich; +Cc: Ian Jackson, xen-devel, Shannon Zhao, Wei Liu, Andrii Anisov

Hi,

On 25/11/16 17:00, Julien Grall wrote:
> On 25/11/16 15:52, Jan Beulich wrote:
>>>>> On 25.11.16 at 16:30, <julien.grall@arm.com> wrote:
>>> On 23/11/16 10:47, Jan Beulich wrote:
>>>>>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
>>>>> Building latest XEN master branch
>>>>> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform
>>>>> using
>>>>> the same yocto as here
>>>>> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X
>>>>>
>>>>> I've
>>>>> faced following issue:
>>>>>
>>>>> Maximum error count (200) exceeded
>>>>>
>>>>> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
>>>>>
>>>>> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>>>>>      3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
>>>>> Error    4084 -
>>>>>
>>>>>                          Object does not exist ^  (\_SB.MSUA)
>>>>
>>>> Looking at the source I see that this statement gets included for
>>>> x86 only. Are you perhaps doing a cross build of the ARM tools
>>>> on an x86 host? If so, it looks like some work would be needed to
>>>> make that work (again? not sure if it ever worked), as there are
>>>> various build host architecture conditionals in mk_dsdt.c.
>>>
>>> I gave a look at this error, I had in mind to replace all the #if
>>> defined(__*__) by the CONFIG_* equivalent.
>>>
>>> However, the CONFIG_* are not available for the tools. I guess we need
>>> to add them in the tools config.h. Any opinions?
>>
>> The CONFIG_* values are available in the Makefile (from
>> config/arm*.mk). I think it would be better if the tool was told
>> via command line option what architecture to build tables for.
>> That would imply converting the problematic #if-s to if()s. Of
>> course the per-arch #include-s at the top may be a problem
>> here, but then again I'm not convinced the full xen/arch-arm.h
>> is really needed here (I'm pretty sure including
>> xen/hvm/hvm_info_table.h would cause no issue for ARM, the
>> more that nominally this is an arch-independent header anyway).
>
> FYI, I am only planning to fix the compilation issue as this is a
> problem for some user.
>
> Regarding hvm/hvm_info_table.h, It contains few things that are x86
> specific (such as the PFN).
>
> Furthermore, I don't think this header should be included on ARM because
> it defines HVM_MAX_VCPUS and may cause confusion with GUEST_MAX_VCPUS
> the correct value for ARM guests.

I forgot to mention that xen/arch-arm.h is necessary in order to get 
GUEST_MAX_VCPUS.

Regards,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-25 17:59         ` Julien Grall
@ 2016-11-28  8:02           ` Jan Beulich
  2016-11-28 12:45             ` Julien Grall
  0 siblings, 1 reply; 12+ messages in thread
From: Jan Beulich @ 2016-11-28  8:02 UTC (permalink / raw)
  To: Julien Grall; +Cc: Ian Jackson, xen-devel, Shannon Zhao, Wei Liu, Andrii Anisov

>>> On 25.11.16 at 18:59, <julien.grall@arm.com> wrote:
> On 25/11/16 17:00, Julien Grall wrote:
>> On 25/11/16 15:52, Jan Beulich wrote:
>>>>>> On 25.11.16 at 16:30, <julien.grall@arm.com> wrote:
>>>> On 23/11/16 10:47, Jan Beulich wrote:
>>>>>>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
>>>>>> Building latest XEN master branch
>>>>>> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform
>>>>>> using
>>>>>> the same yocto as here
>>>>>> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X 
>>>>>>
>>>>>> I've
>>>>>> faced following issue:
>>>>>>
>>>>>> Maximum error count (200) exceeded
>>>>>>
>>>>>> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
>>>>>>
>>>>>> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>>>>>>      3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
>>>>>> Error    4084 -
>>>>>>
>>>>>>                          Object does not exist ^  (\_SB.MSUA)
>>>>>
>>>>> Looking at the source I see that this statement gets included for
>>>>> x86 only. Are you perhaps doing a cross build of the ARM tools
>>>>> on an x86 host? If so, it looks like some work would be needed to
>>>>> make that work (again? not sure if it ever worked), as there are
>>>>> various build host architecture conditionals in mk_dsdt.c.
>>>>
>>>> I gave a look at this error, I had in mind to replace all the #if
>>>> defined(__*__) by the CONFIG_* equivalent.
>>>>
>>>> However, the CONFIG_* are not available for the tools. I guess we need
>>>> to add them in the tools config.h. Any opinions?
>>>
>>> The CONFIG_* values are available in the Makefile (from
>>> config/arm*.mk). I think it would be better if the tool was told
>>> via command line option what architecture to build tables for.
>>> That would imply converting the problematic #if-s to if()s. Of
>>> course the per-arch #include-s at the top may be a problem
>>> here, but then again I'm not convinced the full xen/arch-arm.h
>>> is really needed here (I'm pretty sure including
>>> xen/hvm/hvm_info_table.h would cause no issue for ARM, the
>>> more that nominally this is an arch-independent header anyway).
>>
>> FYI, I am only planning to fix the compilation issue as this is a
>> problem for some user.
>>
>> Regarding hvm/hvm_info_table.h, It contains few things that are x86
>> specific (such as the PFN).
>>
>> Furthermore, I don't think this header should be included on ARM because
>> it defines HVM_MAX_VCPUS and may cause confusion with GUEST_MAX_VCPUS
>> the correct value for ARM guests.
> 
> I forgot to mention that xen/arch-arm.h is necessary in order to get 
> GUEST_MAX_VCPUS.

I think we should strive to solve this in a more elegant way, without
(almost) colliding definitions, and without the need to include stuff
we don't really need here. But yes, as a first step just fixing the
build issue without converting to runtime controlled behavior is going
to be fine. We just shouldn't put the issue fully to rest afterwards.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: XEN tools for ARM64 build issue
  2016-11-28  8:02           ` Jan Beulich
@ 2016-11-28 12:45             ` Julien Grall
  2016-11-28 13:00               ` Processed: " xen
  0 siblings, 1 reply; 12+ messages in thread
From: Julien Grall @ 2016-11-28 12:45 UTC (permalink / raw)
  To: Jan Beulich
  Cc: Andrii Anisov, Wei Liu, Ian Jackson, xen, Shannon Zhao, xen-devel

create ^
title it tools/acpi: Make mk_dsdt more architecture agnostic
severity it wishlist
thanks

On 28/11/16 08:02, Jan Beulich wrote:
>>>> On 25.11.16 at 18:59, <julien.grall@arm.com> wrote:
>> On 25/11/16 17:00, Julien Grall wrote:
>>> On 25/11/16 15:52, Jan Beulich wrote:
>>>>>>> On 25.11.16 at 16:30, <julien.grall@arm.com> wrote:
>>>>> On 23/11/16 10:47, Jan Beulich wrote:
>>>>>>>>> On 23.11.16 at 11:29, <andrii.anisov@gmail.com> wrote:
>>>>>>> Building latest XEN master branch
>>>>>>> (58bd0c7985890e0292212f94a56235228a3445c3) for salvator-x platform
>>>>>>> using
>>>>>>> the same yocto as here
>>>>>>> https://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/Salvator-X
>>>>>>>
>>>>>>> I've
>>>>>>> faced following issue:
>>>>>>>
>>>>>>> Maximum error count (200) exceeded
>>>>>>>
>>>>>>> /home/aanisov/DEV/salvatorx-new/build/tmp/work/aarch64-poky-linux/xen/4.8.0+
>>>>>>>
>>>>>>> gitAUTOINC+58bd0c7985-r0/git/tools/libxl/dsdt_anycpu_arm.asl
>>>>>>>      3:         OperationRegion ( MSUM, SystemMemory, \_SB.MSUA, 1 )
>>>>>>> Error    4084 -
>>>>>>>
>>>>>>>                          Object does not exist ^  (\_SB.MSUA)
>>>>>>
>>>>>> Looking at the source I see that this statement gets included for
>>>>>> x86 only. Are you perhaps doing a cross build of the ARM tools
>>>>>> on an x86 host? If so, it looks like some work would be needed to
>>>>>> make that work (again? not sure if it ever worked), as there are
>>>>>> various build host architecture conditionals in mk_dsdt.c.
>>>>>
>>>>> I gave a look at this error, I had in mind to replace all the #if
>>>>> defined(__*__) by the CONFIG_* equivalent.
>>>>>
>>>>> However, the CONFIG_* are not available for the tools. I guess we need
>>>>> to add them in the tools config.h. Any opinions?
>>>>
>>>> The CONFIG_* values are available in the Makefile (from
>>>> config/arm*.mk). I think it would be better if the tool was told
>>>> via command line option what architecture to build tables for.
>>>> That would imply converting the problematic #if-s to if()s. Of
>>>> course the per-arch #include-s at the top may be a problem
>>>> here, but then again I'm not convinced the full xen/arch-arm.h
>>>> is really needed here (I'm pretty sure including
>>>> xen/hvm/hvm_info_table.h would cause no issue for ARM, the
>>>> more that nominally this is an arch-independent header anyway).
>>>
>>> FYI, I am only planning to fix the compilation issue as this is a
>>> problem for some user.
>>>
>>> Regarding hvm/hvm_info_table.h, It contains few things that are x86
>>> specific (such as the PFN).
>>>
>>> Furthermore, I don't think this header should be included on ARM because
>>> it defines HVM_MAX_VCPUS and may cause confusion with GUEST_MAX_VCPUS
>>> the correct value for ARM guests.
>>
>> I forgot to mention that xen/arch-arm.h is necessary in order to get
>> GUEST_MAX_VCPUS.
>
> I think we should strive to solve this in a more elegant way, without
> (almost) colliding definitions, and without the need to include stuff
> we don't really need here. But yes, as a first step just fixing the
> build issue without converting to runtime controlled behavior is going
> to be fine. We just shouldn't put the issue fully to rest afterwards.
>
> Jan
>

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Processed: Re:  XEN tools for ARM64 build issue
  2016-11-28 12:45             ` Julien Grall
@ 2016-11-28 13:00               ` xen
  0 siblings, 0 replies; 12+ messages in thread
From: xen @ 2016-11-28 13:00 UTC (permalink / raw)
  To: Julien Grall, xen-devel

Processing commands for xen@bugs.xenproject.org:

> create ^
Created new bug #55 rooted at `<583BF2B30200007800122A65@prv-mh.provo.novell.com>'
Title: `Re: [Xen-devel] XEN tools for ARM64 build issue'
> title it tools/acpi: Make mk_dsdt more architecture agnostic
Set title for #55 to `tools/acpi: Make mk_dsdt more architecture agnostic'
> severity it wishlist
Change severity for #55 to `wishlist'
> thanks
Finished processing.

Modified/created Bugs:
 - 55: http://bugs.xenproject.org/xen/bug/55 (new)

---
Xen Hypervisor Bug Tracker
See http://wiki.xen.org/wiki/Reporting_Bugs_against_Xen for information on reporting bugs
Contact xen-bugs-owner@bugs.xenproject.org with any infrastructure issues

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-11-28 13:00 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-23 10:29 XEN tools for ARM64 build issue Andrii Anisov
2016-11-23 10:47 ` Jan Beulich
2016-11-23 10:59   ` Andrii Anisov
2016-11-25 15:30   ` Julien Grall
2016-11-25 15:52     ` Jan Beulich
2016-11-25 17:00       ` Julien Grall
2016-11-25 17:59         ` Julien Grall
2016-11-28  8:02           ` Jan Beulich
2016-11-28 12:45             ` Julien Grall
2016-11-28 13:00               ` Processed: " xen
2016-11-25 15:55     ` Wei Liu
2016-11-25 17:18       ` Julien Grall

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.