* [Buildroot] [PATCH v2 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
@ 2020-01-31 15:39 Vincent Fazio
2020-02-04 16:11 ` Romain Naour
2020-02-04 19:25 ` [Buildroot] [PATCH v3 " Vincent Fazio
0 siblings, 2 replies; 8+ messages in thread
From: Vincent Fazio @ 2020-01-31 15:39 UTC (permalink / raw)
To: buildroot
musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
However, there are exceptions (such as the e5500) for which musl builds
ultimately generate illegal instructions for the targets.
Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
This patch addresses the issues seen here:
https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
---
toolchain/toolchain-buildroot/Config.in | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
index a980f766ac..09a46822c9 100644
--- a/toolchain/toolchain-buildroot/Config.in
+++ b/toolchain/toolchain-buildroot/Config.in
@@ -83,8 +83,10 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
bool "musl"
depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \
BR2_microblaze || BR2_mips || BR2_mipsel || BR2_mips64 || \
- BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
- BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
+ BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_RISCV_64 || \
+ BR2_sh || BR2_x86_64 || \
+ ((BR2_powerpc64 || BR2_powerpc64le) && BR2_POWERPC_CPU_HAS_ALTIVEC)
+ # musl assumes all PPC64 targets support ALTIVEC instructions
depends on !BR2_powerpc_SPE # not supported, build breaks
# sh2 nommu is supported by musl, but we don't have support
# for it in Buildroot.
--
2.25.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
2020-01-31 15:39 [Buildroot] [PATCH v2 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC Vincent Fazio
@ 2020-02-04 16:11 ` Romain Naour
2020-02-04 16:54 ` Vincent Fazio
2020-02-04 19:25 ` [Buildroot] [PATCH v3 " Vincent Fazio
1 sibling, 1 reply; 8+ messages in thread
From: Romain Naour @ 2020-02-04 16:11 UTC (permalink / raw)
To: buildroot
Hi Vincent,
Le 31/01/2020 ? 16:39, Vincent Fazio a ?crit?:
> musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
>
> However, there are exceptions (such as the e5500) for which musl builds
> ultimately generate illegal instructions for the targets.
>
> Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
>
> This patch addresses the issues seen here:
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
I reported this issue to the musl mailing list. I'm not sure the e5500 support
will be added in the end.
https://www.openwall.com/lists/musl/2020/02/03/10
>
> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
> ---
> toolchain/toolchain-buildroot/Config.in | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
> index a980f766ac..09a46822c9 100644
> --- a/toolchain/toolchain-buildroot/Config.in
> +++ b/toolchain/toolchain-buildroot/Config.in
> @@ -83,8 +83,10 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
> bool "musl"
> depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \
> BR2_microblaze || BR2_mips || BR2_mipsel || BR2_mips64 || \
> - BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
> - BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
> + BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_RISCV_64 || \
> + BR2_sh || BR2_x86_64 || \
> + ((BR2_powerpc64 || BR2_powerpc64le) && BR2_POWERPC_CPU_HAS_ALTIVEC)
> + # musl assumes all PPC64 targets support ALTIVEC instructions
Well, previously the architectures was sorted alphabetically. Please keep it.
You can add the dependency this way:
# musl assumes all PPC64 targets support ALTIVEC instructions
depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
Best regards,
Romain
> depends on !BR2_powerpc_SPE # not supported, build breaks
> # sh2 nommu is supported by musl, but we don't have support
> # for it in Buildroot.
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
2020-02-04 16:11 ` Romain Naour
@ 2020-02-04 16:54 ` Vincent Fazio
0 siblings, 0 replies; 8+ messages in thread
From: Vincent Fazio @ 2020-02-04 16:54 UTC (permalink / raw)
To: buildroot
Romain,
On 2/4/20 10:11 AM, Romain Naour wrote:
> Hi Vincent,
>
> Le 31/01/2020 ? 16:39, Vincent Fazio a ?crit?:
>> musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
>>
>> However, there are exceptions (such as the e5500) for which musl builds
>> ultimately generate illegal instructions for the targets.
>>
>> Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
>>
>> This patch addresses the issues seen here:
>> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
>> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
> I reported this issue to the musl mailing list. I'm not sure the e5500 support
> will be added in the end.
>
> https://www.openwall.com/lists/musl/2020/02/03/10
>
>> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
>> ---
>> toolchain/toolchain-buildroot/Config.in | 6 ++++--
>> 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
>> index a980f766ac..09a46822c9 100644
>> --- a/toolchain/toolchain-buildroot/Config.in
>> +++ b/toolchain/toolchain-buildroot/Config.in
>> @@ -83,8 +83,10 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
>> bool "musl"
>> depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \
>> BR2_microblaze || BR2_mips || BR2_mipsel || BR2_mips64 || \
>> - BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
>> - BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
>> + BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_RISCV_64 || \
>> + BR2_sh || BR2_x86_64 || \
>> + ((BR2_powerpc64 || BR2_powerpc64le) && BR2_POWERPC_CPU_HAS_ALTIVEC)
>> + # musl assumes all PPC64 targets support ALTIVEC instructions
> Well, previously the architectures was sorted alphabetically. Please keep it.
>
> You can add the dependency this way:
>
> # musl assumes all PPC64 targets support ALTIVEC instructions
> depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
Ack, i didn't even notice they were alpha-sorted. i'll fix this in v3.
Thanks
> Best regards,
> Romain
>
>> depends on !BR2_powerpc_SPE # not supported, build breaks
>> # sh2 nommu is supported by musl, but we don't have support
>> # for it in Buildroot.
>>
--
Vincent Fazio
Embedded Software Engineer - Linux
Extreme Engineering Solutions, Inc
http://www.xes-inc.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v3 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
2020-01-31 15:39 [Buildroot] [PATCH v2 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC Vincent Fazio
2020-02-04 16:11 ` Romain Naour
@ 2020-02-04 19:25 ` Vincent Fazio
2020-02-04 20:55 ` Romain Naour
2020-02-04 21:35 ` [Buildroot] [PATCH v4 " Vincent Fazio
1 sibling, 2 replies; 8+ messages in thread
From: Vincent Fazio @ 2020-02-04 19:25 UTC (permalink / raw)
To: buildroot
musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
However, there are exceptions (such as the e5500) for which musl builds
ultimately generate illegal instructions for the targets.
Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
This patch addresses the issues seen here:
https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
---
Changes v2 -> v3:
- change to 'depends on' semantics (suggested by Romain)
Changes v1 -> v2:
- clarify commit message (suggested by Matthew)
- add job logs (suggested by Romain)
Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
---
toolchain/toolchain-buildroot/Config.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
index a980f766ac..8c33b2b4dd 100644
--- a/toolchain/toolchain-buildroot/Config.in
+++ b/toolchain/toolchain-buildroot/Config.in
@@ -86,6 +86,7 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
depends on !BR2_powerpc_SPE # not supported, build breaks
+ depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
# sh2 nommu is supported by musl, but we don't have support
# for it in Buildroot.
depends on BR2_USE_MMU
--
2.25.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v3 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
2020-02-04 19:25 ` [Buildroot] [PATCH v3 " Vincent Fazio
@ 2020-02-04 20:55 ` Romain Naour
2020-02-04 21:35 ` [Buildroot] [PATCH v4 " Vincent Fazio
1 sibling, 0 replies; 8+ messages in thread
From: Romain Naour @ 2020-02-04 20:55 UTC (permalink / raw)
To: buildroot
Hi Vincent,
Le 04/02/2020 ? 20:25, Vincent Fazio a ?crit?:
> musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
>
> However, there are exceptions (such as the e5500) for which musl builds
> ultimately generate illegal instructions for the targets.
>
> Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
Maybe the link to the report to the mailing list can be added:
https://www.openwall.com/lists/musl/2020/02/03/10
Otherwise:
Reviewed-by: Romain Naour <romain.naour@smile.fr>
Best regards,
Romain
>
> This patch addresses the issues seen here:
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
>
> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
> ---
>
> Changes v2 -> v3:
> - change to 'depends on' semantics (suggested by Romain)
>
> Changes v1 -> v2:
> - clarify commit message (suggested by Matthew)
> - add job logs (suggested by Romain)
>
> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
> ---
> toolchain/toolchain-buildroot/Config.in | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
> index a980f766ac..8c33b2b4dd 100644
> --- a/toolchain/toolchain-buildroot/Config.in
> +++ b/toolchain/toolchain-buildroot/Config.in
> @@ -86,6 +86,7 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
> BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
> BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
> depends on !BR2_powerpc_SPE # not supported, build breaks
> + depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
> # sh2 nommu is supported by musl, but we don't have support
> # for it in Buildroot.
> depends on BR2_USE_MMU
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v4 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
2020-02-04 19:25 ` [Buildroot] [PATCH v3 " Vincent Fazio
2020-02-04 20:55 ` Romain Naour
@ 2020-02-04 21:35 ` Vincent Fazio
2020-02-04 21:38 ` Romain Naour
2020-04-20 21:40 ` Yann E. MORIN
1 sibling, 2 replies; 8+ messages in thread
From: Vincent Fazio @ 2020-02-04 21:35 UTC (permalink / raw)
To: buildroot
musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
However, there are exceptions (such as the e5500) for which musl builds
ultimately generate illegal instructions for the targets.
Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
This patch addresses the issues seen here:
https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
musl mailing list thread:
https://www.openwall.com/lists/musl/2020/02/03/10
Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
---
Changes v3 -> v4:
- document musl mailing list thread (suggested by Romain)
Changes v2 -> v3:
- change to 'depends on' semantics (suggested by Romain)
Changes v1 -> v2:
- clarify commit message (suggested by Matthew)
- add job logs (suggested by Romain)
Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
---
toolchain/toolchain-buildroot/Config.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
index a980f766ac..8c33b2b4dd 100644
--- a/toolchain/toolchain-buildroot/Config.in
+++ b/toolchain/toolchain-buildroot/Config.in
@@ -86,6 +86,7 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
depends on !BR2_powerpc_SPE # not supported, build breaks
+ depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
# sh2 nommu is supported by musl, but we don't have support
# for it in Buildroot.
depends on BR2_USE_MMU
--
2.25.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v4 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
2020-02-04 21:35 ` [Buildroot] [PATCH v4 " Vincent Fazio
@ 2020-02-04 21:38 ` Romain Naour
2020-04-20 21:40 ` Yann E. MORIN
1 sibling, 0 replies; 8+ messages in thread
From: Romain Naour @ 2020-02-04 21:38 UTC (permalink / raw)
To: buildroot
Le 04/02/2020 ? 22:35, Vincent Fazio a ?crit?:
> musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
>
> However, there are exceptions (such as the e5500) for which musl builds
> ultimately generate illegal instructions for the targets.
>
> Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
>
> This patch addresses the issues seen here:
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
>
> musl mailing list thread:
> https://www.openwall.com/lists/musl/2020/02/03/10
>
> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Best regards,
Romain
> ---
>
> Changes v3 -> v4:
> - document musl mailing list thread (suggested by Romain)
>
> Changes v2 -> v3:
> - change to 'depends on' semantics (suggested by Romain)
>
> Changes v1 -> v2:
> - clarify commit message (suggested by Matthew)
> - add job logs (suggested by Romain)
>
> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
> ---
> toolchain/toolchain-buildroot/Config.in | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
> index a980f766ac..8c33b2b4dd 100644
> --- a/toolchain/toolchain-buildroot/Config.in
> +++ b/toolchain/toolchain-buildroot/Config.in
> @@ -86,6 +86,7 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
> BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
> BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
> depends on !BR2_powerpc_SPE # not supported, build breaks
> + depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
> # sh2 nommu is supported by musl, but we don't have support
> # for it in Buildroot.
> depends on BR2_USE_MMU
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v4 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC
2020-02-04 21:35 ` [Buildroot] [PATCH v4 " Vincent Fazio
2020-02-04 21:38 ` Romain Naour
@ 2020-04-20 21:40 ` Yann E. MORIN
1 sibling, 0 replies; 8+ messages in thread
From: Yann E. MORIN @ 2020-04-20 21:40 UTC (permalink / raw)
To: buildroot
Vincent, All,
On 2020-02-04 15:35 -0600, Vincent Fazio spake thusly:
> musl currently assumes all PPC64(LE) CPUs support ALTIVEC instructions.
>
> However, there are exceptions (such as the e5500) for which musl builds
> ultimately generate illegal instructions for the targets.
>
> Disable musl if the PPC64(LE) CPU does not support ALTIVEC instructions.
>
> This patch addresses the issues seen here:
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092743
> https://gitlab.com/kubu93/toolchains-builder/-/jobs/418092744
It's a bit unfortunate that the boot log are not visible in the job
output, though...
Applied to master, thanks.
Regards,
Yann E. MORIN.
> musl mailing list thread:
> https://www.openwall.com/lists/musl/2020/02/03/10
>
> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
> ---
>
> Changes v3 -> v4:
> - document musl mailing list thread (suggested by Romain)
>
> Changes v2 -> v3:
> - change to 'depends on' semantics (suggested by Romain)
>
> Changes v1 -> v2:
> - clarify commit message (suggested by Matthew)
> - add job logs (suggested by Romain)
>
> Signed-off-by: Vincent Fazio <vfazio@xes-inc.com>
> ---
> toolchain/toolchain-buildroot/Config.in | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
> index a980f766ac..8c33b2b4dd 100644
> --- a/toolchain/toolchain-buildroot/Config.in
> +++ b/toolchain/toolchain-buildroot/Config.in
> @@ -86,6 +86,7 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL
> BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \
> BR2_powerpc64le || BR2_RISCV_64 || BR2_sh || BR2_x86_64
> depends on !BR2_powerpc_SPE # not supported, build breaks
> + depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
> # sh2 nommu is supported by musl, but we don't have support
> # for it in Buildroot.
> depends on BR2_USE_MMU
> --
> 2.25.0
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-04-20 21:40 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-31 15:39 [Buildroot] [PATCH v2 1/1] toolchain/toolchain-buildroot: PPC64(LE) support in musl requires ALTIVEC Vincent Fazio
2020-02-04 16:11 ` Romain Naour
2020-02-04 16:54 ` Vincent Fazio
2020-02-04 19:25 ` [Buildroot] [PATCH v3 " Vincent Fazio
2020-02-04 20:55 ` Romain Naour
2020-02-04 21:35 ` [Buildroot] [PATCH v4 " Vincent Fazio
2020-02-04 21:38 ` Romain Naour
2020-04-20 21:40 ` Yann E. MORIN
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.