linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* Aarch64 kernel with 32bit userspace question
@ 2017-02-09 10:14 Marek Vasut
  2017-02-09 10:29 ` Jisheng Zhang
  2017-02-09 10:51 ` Ard Biesheuvel
  0 siblings, 2 replies; 11+ messages in thread
From: Marek Vasut @ 2017-02-09 10:14 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

I'm trying multilib userland on aarch64, but I'm running into a problem.
I have a simple test code:

-->8--
#include <signal.h>

int main(void) {
    return 0;
}
--8<--

If I compile that with aarch64 gcc , it compiles just fine.

If I compile the same thing with 32bit armv7ahf multilib gcc, the
build fails on "unknown type name '__uint128_t'". This comes from
arch/arm64/include/uapi/asm/sigcontext.h , which has __uint128_t in
struct fpsimd_context {} . The signal.h includes that (through a few
glibc headers) and that's what triggers the failure. __uint128_t is
defined on aarch64 , but it is not on armv7a (32bit).

Grepping through the kernel sources , __uint128_t is used in some three
places on aarch64 (and in bluetooth/ecc.c , where it's defined as a
struct of two u64 internally in that file, so irrelevant). I wonder
whether the usage of __uint128_t is really correct in sigcontext.h and
whether it shouldn't be replaced by some u64 array or such ?

Or is there any other way to use aarch64 kernel (and kernel headers)
with 32bit userspace ?

Thanks!

-- 
Best regards,
Marek Vasut

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

end of thread, other threads:[~2017-02-18 22:20 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-09 10:14 Aarch64 kernel with 32bit userspace question Marek Vasut
2017-02-09 10:29 ` Jisheng Zhang
2017-02-09 10:43   ` Marek Vasut
2017-02-09 10:46     ` Jisheng Zhang
2017-02-09 10:51 ` Ard Biesheuvel
2017-02-09 11:14   ` Marek Vasut
2017-02-09 11:24     ` Ard Biesheuvel
2017-02-09 12:25       ` Russell King - ARM Linux
2017-02-09 20:38         ` Marek Vasut
2017-02-10 12:39           ` Arnd Bergmann
2017-02-18 22:20             ` Marek Vasut

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).