> On May 23, 2015, at 5:26 PM, Scarlett <scarlett@entering.space> wrote:
> 
>> On 23/05/2015 22:19, Douglas Beattie wrote:
>> I think there is a difference between building OpenBSD "on real hardware"
>> and building port binaries for ARMv7 which are intended to run across all
>> of the ARMv7 target ports.
>> 
>> And I think the concern should be less about “OS bugs and emulator bugs”
>> since (1.) you’re not building the OS, and (2.) ARM emulation is quite mature
>> with several standard platform configurations which may be targeted 
>> (including
>> ARMv7).
>> 
>> A dual-Xeon-quad-core server (8 cores, 16 threads) with 48G of RAM can
>> easily host 10 or more VMs, and do a distributed build across QEMU/ARM
>> running on each of the VMs. The resulting compiled code for a port ‘binary’
>> distribution should be no different regardless of where it was actually 
>> built.
>> 
>> So, what then is the reason (other than philosophical) that an OpenBSD port
>> does not yet exist for QEMU/ARM ?  If you can no longer blame the hardware
>> to such a degree, then either your port builds should become more reliable, 
>> or
>> there is still a problem with the OS arch.
>> 
>> The behavior of emulated hardware is repeatable and fairly predictable, 
>> especially
>> if it’s a mature emulation platform (i.e. having been pounded on and 
>> considered
>> stable already for multiple OS). Taking the hardware (excuse) out of the 
>> equation,
>> you could move forward with efforts to continuously build and validate ARMv7 
>> ports
>> with every iteration of OpenBSD.
>> 
>> And yes, the native building of the OS itself is still a great stress test 
>> for these up-and-
>> coming ARMv7 hardware platforms. But the building of port packages -- or the 
>> choice
>> of making excuses to not build or provide them -- is really a very separate 
>> issue.
>> 
>> 
>>> On 2015-05-23, Stuart Henderson wrote:
>>> Not particularly. If the machines and/or OS arch are reliable in the
>>> first place it's not a problem to spread builds across more machines.
>>> But in reality, it's not very reliable, so 1) adding machines just
>>> means babysitting additional crashes, and 2) if emulation is used
>>> instead of real machines, then you're dealing with both OS bugs and
>>> emulator bugs.
> 
> Why are OS bugs not a concern when doing ports builds? The OS must be 
> suitably stable to complete the build, unless you're advocating for 
> cross-compilation. I could point to NetBSD's history with toolchain bugs and 
> cross-built executables not actually running on the target platform as being 
> valid reasons for avoiding it. It's probably unfair to single out NetBSD 
> here, plenty of other projects have had these headaches.
> 
> I think the reason for there being no arm-on-qemu support is the usual 
> supect: it's not a priority for any developer.
> 
> Maybe it's easy to accuse others of making excuses when you aren't 
> responsible for making sure the builds work and aren't hacking on the port.
> 
> (whoops, I forgot to CC the list).
> 

Building virtual is a solid idea. It's just not fun, so it's not going to 
happen. Hell, Qemu support is likely going to be easier than real hardware.

Reply via email to