zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
zupo has joined #nixos-aarch64
ris has joined #nixos-aarch64
<flokli>
am I seeing it correct that we don't really need qemu to build armv7l binaries on the aarch64 boxes that understand the armv7l istruction set?
<samueldr>
flokli: our experience thus far points that the armv7l "personality" is much shallower than i686 with the kernel
<samueldr>
armv8 and aarch64 seeps through and ends up polluting some builds
<samueldr>
yes it's possible, but it'd need a number of contributions to make those build systems behave
<flokli>
hmm, hmm
<flokli>
but in that case, shouldn't the x86_64 amd64 personality be as porous?
<samueldr>
¯\_(ツ)_/¯
<samueldr>
apparently it isn't
<samueldr>
I don't know if it's because build systems are aware of it or not, that could be it
<flokli>
isn't that personality simply influencing what arch uname reports back?
<samueldr>
or if it's really a question of kernel-side implementation
<samueldr>
well, here's a thing, if you only influence what arch uname reports, the CPU will still execute the additional instructions
<samueldr>
then, some software featue detect CPUs
<flokli>
ah, gotcha
<samueldr>
feature detect*
<samueldr>
and IIRC there were other small gotchas
<samueldr>
I don't think it's an impossible task, but it's not a trivial one
<samueldr>
to get this going
<samueldr>
though, now thinking about it some more, I wonder about the issue, if it's kernel-side, if the investment in fixing it in the kernel wouldn't be much better
<flokli>
How could those feature detection things even try to execute 64bit instructions?
<samueldr>
I don't know about 64 bit
<flokli>
the kernel should just spit the 64bit binary out if it's run under the wrong personality
<samueldr>
but 32 bit armv8 is a thing
<flokli>
hrm. so we're talking about armv7l != armv8 32bit != armv8 64bit
<flokli>
holy moly
<samueldr>
I think so
<samueldr>
though it's been a while since I last looked at it
<samueldr>
and my undetstanding of it all increased since
<samueldr>
this sounds like running 64 bit on 32 bit OS
<samueldr>
and everything I said was from observations
<samueldr>
oh, and the image in that link does show running an hypervisor; that's something I tried and used successfully to build a native build armv7l image
<misuzu>
flokli: what's wrong with qemu route? no hacks required afaik
<samueldr>
there's always drawbacks
<samueldr>
armv7l kernels have some limitations, even when virtualized
<samueldr>
IIRC, 12 cores max, so you'd have to spin up multiple qemu VMs to make better use of the HW
<samueldr>
then there's LPAE, which needs to be activated, to get more than 3.something GB ram
<samueldr>
and it's more moving pieces
<samueldr>
if the same exact pieces manage the 32 and 64 bits builds, it's much easier to manage
<misuzu>
it's better than nothing
<misuzu>
samueldr: maybe 12 cores limit can be lifted somehow with kernel patch?
<samueldr>
I don't have the expertise to say :)
<samueldr>
hm, gonna need a new thing to splatter pngs on the framebuffer in initrd as the one I'm using now doesn't do alpha... or fix the one I use to do alpha