aarch64 Server Not Recognized As Supporting aarch32
Hello, I recently obtained an aarch64 server which runs aarch32 code just fine. However, OBS does not recognize that it can run aarch32 code and reports it as "nativeonly" to the dispatcher. Looking through the dispatcher code shows that it's examining a set of flags from /proc/cpuinfo to determine if aarch32 is supported, and my particular flags: processor : 0 BogoMIPS : 80.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid CPU implementer : 0x50 CPU architecture: 8 CPU variant : 0x3 CPU part : 0x000 CPU revision : 2 are not recognized as supporting aarch32. For reference, we have another server which is recognized: processor : 0 BogoMIPS : 500.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid CPU implementer : 0x41 CPU architecture: 8 CPU variant : 0x1 CPU part : 0xd07 CPU revision : 2 Is the code simply out of date, or is there a reason why my server's CPU is not included? Kyle
On 2/15/21 3:29 PM, Kyle Edwards wrote:
Hello,
I recently obtained an aarch64 server which runs aarch32 code just fine. However, OBS does not recognize that it can run aarch32 code and reports it as "nativeonly" to the dispatcher. Looking through the dispatcher code shows that it's examining a set of flags from /proc/cpuinfo to determine if aarch32 is supported, and my particular flags:
processor : 0 BogoMIPS : 80.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid CPU implementer : 0x50 CPU architecture: 8 CPU variant : 0x3 CPU part : 0x000 CPU revision : 2
are not recognized as supporting aarch32. For reference, we have another server which is recognized:
processor : 0 BogoMIPS : 500.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid CPU implementer : 0x41 CPU architecture: 8 CPU variant : 0x1 CPU part : 0xd07 CPU revision : 2
Is the code simply out of date, or is there a reason why my server's CPU is not included?
Ping? Kyle
Hey Kyle, Long time no talk, good to hear from you! Am Mi., 24. Feb. 2021 um 20:50 Uhr schrieb Kyle Edwards <kyle.edwards@kitware.com>:
processor : 0 BogoMIPS : 80.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid CPU implementer : 0x50 CPU architecture: 8 CPU variant : 0x3 CPU part : 0x000 CPU revision : 2
Ping?
Sorry that noone followed up on this - https://github.com/openSUSE/open-build-service/blob/a0a35a5f969e863674c0e313... the code does not cover this variant. I can submit that code change for you if you want. can you tell me a product or board name that we can use in the comment? Greetings, Dirk
On 3/10/21 9:49 AM, Dirk Müller wrote:
Sorry that noone followed up on this - https://github.com/openSUSE/open-build-service/blob/a0a35a5f969e863674c0e313... the code does not cover this variant.
I can submit that code change for you if you want. can you tell me a product or board name that we can use in the comment?
Hey Dirk, thanks for the reply! The server we're using is an Ampere eMAG. One of my colleagues was even kind enough to prepare a ready-made patch: diff --git a/src/backend/bs_worker b/src/backend/bs_worker index e0c5922d1c..cde0d7dcfc 100755 --- a/src/backend/bs_worker +++ b/src/backend/bs_worker @@ -805,6 +805,9 @@ if (open(FILE, "<", "/proc/cpuinfo")) { } elsif ($cpu_variant eq "0x1") { # APM X-Gene 2 supports aarch32 $supports_aarch32 = 1; + } elsif ($cpu_variant eq "0x3") { + # Ampere eMAG supports aarch32 + $supports_aarch32 = 1; } } elsif ($cpu_implementer eq "0x41") { # ARM Inc. - all variants support aarch32 compat for now Kyle
On 3/10/21 11:20 AM, Kyle Edwards wrote:
On 3/10/21 9:49 AM, Dirk Müller wrote:
Sorry that noone followed up on this - https://github.com/openSUSE/open-build-service/blob/a0a35a5f969e863674c0e313...
the code does not cover this variant.
I can submit that code change for you if you want. can you tell me a product or board name that we can use in the comment?
Hey Dirk, thanks for the reply! The server we're using is an Ampere eMAG. One of my colleagues was even kind enough to prepare a ready-made patch:
Hey Dirk, I never received a reply to this so I didn't know it had been taken care of. Now I see https://github.com/openSUSE/open-build-service/pull/10850, which committed the suggested patch. I tried it on our setup and confirmed that our eMAG is no longer reporting as "nativeonly". Thanks! Kyle
participants (2)
-
Dirk Müller
-
Kyle Edwards