[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [OSSTEST PATCH 6/6] builds: Run i386 builds on amd64 kernels
Most hardware that supports i386 supports amd64 too. When doing builds we do need the right userland, but we don't actually care what the kernel is doing. With Linux 32-on-64 is good for that. Especially, there is a kernel regression (evident in the Debian stretch kernel, but not present in jessie's) where 32-bit Linux mismanages the memory on hosts with moderately large amounts of RAM (ie, significantly more RAM than can be addressed at once), resulting in what amounts to a near-stall of the paging system. Since the paging system is used for filesystem writes too, the effect is that commands run by builds can take totally unreasonable amounts of time. Ie, this version of Linux is broken when i386 PAE is needed. In practice this is causing significant trouble in the Xen Project CI. This kernel bug probably won't affect our test jobs because (i) we use our own kernels, so we would probably detect this regression when switching kernel branches etc. (ii) test jobs run with a dom0_mem setting which avoids the preconditions for the particular bug. CC: Juergen Gross <jgross@xxxxxxxx> CC: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> CC: Wei Liu <wei.liu2@xxxxxxxxxx> CC: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> CC: Paul Durrant <paul.durrant@xxxxxxxxxx> Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> --- ts-host-install | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ts-host-install b/ts-host-install index 7094559f..45f04764 100755 --- a/ts-host-install +++ b/ts-host-install @@ -31,6 +31,7 @@ my $debconf_priority; my $poweron_test_only; our %xopts; +our $kern_arch_info; while (@ARGV and $ARGV[0] =~ m/^-/) { $_= shift @ARGV; @@ -42,6 +43,12 @@ while (@ARGV and $ARGV[0] =~ m/^-/) { } elsif (m/^--rescue$/) { $xopts{RescueMode}= 1; } elsif (m/^--build$/) { + if ($r{arch} eq 'i386') { + $kern_arch_info = { + Kernel_Debian => 'amd64', + Userland_setarch => 'i386', + }; + } } else { die "$_ $!"; } @@ -61,6 +68,7 @@ sub install () { ($ho, '', DiskDevice => $ho->{DiskDevice}, Properties => $ho->{Properties}, + LinuxKernPreferredArchInfo => $kern_arch_info, ExtraPreseed => <<END ); d-i netcfg/get_hostname string $ho->{Name} d-i netcfg/get_ipaddress string $ho->{Ip} -- 2.11.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |