All of lore.kernel.org
 help / color / mirror / Atom feed
* [OSSTEST PATCH 00/62] Update to Debian stable (stretch)
@ 2019-04-10 14:23     ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: committers, Ian Jackson

This, finally, is the series to update osstest to Debian stretch.
This is very urgent because Debian have been removing parts of jessie
from their servers, in a rather unhelpful and not entirely controlled
manner.  Consequently, currently osstest is not reliable with jessie.

I am going to push this series to osstest pretest immediately without
waiting for acks/reviews/etc.  I expect it to trip two regressions in
the osstest push gate, which I will force push.

One effect of this series is to put into service the two ThunderX
arm64 machines, rochester[01], which are supportable in stretch but
not jessie.

There seem to be a number of outstanding problems which I decided were
not blockers:

 * test-amd64-amd64-xl-qcow2 fails because the xvd driver fails to
   freeze during the Linux guest suspend.  This seems to be a real bug
   of some kind and needs investigation.

 * I experienced difficulties with the 4 Arndale devboards: high
   probability guest start failures.  For now I have marked those
   nodes as unsuitable for use with stretch, which will, effectively,
   take them out of service - and leave us with a lack of armhf
   capacity.  It is possible that this problem is due to the
   ifupdown-hotplug issue, now addressed, so I plan to retest.

 * The serial output from the new rochester arm64 machines is missing
   some of the grub bootloader messages (and this is detected by one
   of the examine jobs).  I may need help from someone familiar with
   these machines' hardware/firmware.

 * stretch did not appear to work properly on joubertin[01] and
   merlot[01] (x86 boxes).  I have marked them to be not used with
   stretch.  They will need to be retested and the problems
   investigated (if indeed the problems still remain after other fixes
   which are now in this series).

 * I have two bug reports / patches to go upstream to Debian: a boot
   ordering bug with ifupdown and udev, and a bug in fishdescriptor.

There are a couple of occurrences in this series of changes which
break things followed by patches to fix them up.  I have not bothered
squashing/reorganising those.

Ian Jackson (41):
  power: Fix uninitialised variable warning
  Debian: Fix http:// url for bugs.xenproject.org
  contents_make_cpio: Include symlinks
  contents_make_cpio: Make files owned by root
  overlay-persistent-net: Copy from jessie
  persistent-net: Add overlay on installed systems >= stretch
  persistent-net: Add overlay in installer >= stretch
  ts-host-install: Break out $persistent_net_rules
  ts-host-install: Unconditionally mkdir -p /etc/udev/rules.d
  ts-host-install: Put canary in 70-persistent-net.rules
  persistent-net: Include initramfs script to copy to target
  persistent-net: Set net.ifnames=0 in di_installcmdline_core
  ts-kernel-build: Enable some additional drivers for Thunder-X
  TestSupport: Move `stashed files' and `next_unique_name' earlier
  TestSupport: Move `target_somefile_getleaf' earlier
  TestSupport: target_somefile_leaf rename and change a variable
  TestSupport: Provide target_getfile_root_stash
  ts-guests-nbd-mirror: Use target_getfile_root_stash
  preseed_base: chmod ssh host private keys to placate sshd
  preseed_base: break out debian_overlays_fixup_cmd
  ts-debian-fixup: Use debian_overlays_fixup_cmd
  preseed_hook_command: allow specifying di keys other than preseed/*
  preseed_hook_installscript: Use partman/early_command, not preseed/
  Debian: preseed_hook_installscript: New $atonce option
  Debian: partman scripts: Run right away too
  Debian: set partman-lvm/device_remove_lvm_span
  Debian: Add reference to bug numbers for erase-other-disks
  dm restrict audit: actually install right package for fishdescriptor
  Debian: Move preseed_backports_packages earlier
  dm restrict audit: actually install fishdescriptor in host
  dm restrict audit: always install (some) chiark-scripts
  target_install_packages: Consistently use qw(...) rather than '...'
  ts-xen-install: Install libpciaccess0
  ts-debian-hvm-install: Honour linux_boot_append target var
  make-flight: shadow test: Disable kpti in guests
  platforms: Pass suite to get_arch_platforms
  platforms: Honour suite in get_arch_platforms
  dm restrict, fishdescriptor: Update to a fixed chiark-scripts
  Debian: Fix /lib/udev/ifupdown-hotplug to not run if / is ro
  Debian: Fix /lib/udev/ifupdown-hotplug in guests from debootstrap
  production-config-cambridge: Provide TftpDiVersion_stretch

Julien Grall (2):
  stretch: Use chainloading when booting using GRUB on Arm64
  ts-xen-build: Enable ITS driver in Xen

Wei Liu (19):
  gitignore: ignore vim swap file
  ts-xen-build-prep: only install w3c-dtd-xhtml for suites <Stretch
  ts-xen-build-prep: install packages for suites >jessie
  ts-xen-install: install some packages on stretch
  Debian.pm: use sysvinit-core instead of systemd
  ts-leak-check: suppress systemd-shim, which leaks in stretch
  ts-host-install: don't use the new nic naming scheme
  ts-debian-fixup: merge origin extra= to our own if necessary
  ts-debian-fixup: append noresume
  ts-xen-build-prep: install e2fslibs-dev
  ts-guests-nbd-mirror: make it work with stretch
  Extend workaround `clk_ignore_unused' to stretch
  adjust how to skip bootloader installation for arm32, in Stretch
  ts-debian-di-install: use gho to pick d-i
  make-flight: guest should use jessie to test pvgrub
  Drop rumprun tests
  ts-guests-nbd-mirror: use target_{get,put}file_root to transfter cfg
  ts-kernel-build: disable host1x, which doesn't build
  Switch to Debian Stretch

 .gitignore                                         |   1 +
 Osstest.pm                                         |   2 +-
 Osstest/Debian.pm                                  | 205 ++++++++++++++-------
 Osstest/HostDB/Executive.pm                        |  10 +-
 Osstest/HostDB/Static.pm                           |   4 +-
 Osstest/RumpRun.pm                                 |  68 -------
 Osstest/TestSupport.pm                             | 115 ++++++------
 Osstest/Toolstack/rumprun.pm                       |  33 ----
 allow.all                                          |   1 -
 allow.rumprun                                      |   1 -
 ap-common                                          |   7 -
 ap-fetch-version                                   |   4 -
 ap-fetch-version-old                               |   5 -
 ap-print-url                                       |   3 -
 ap-push                                            |   5 -
 cr-daily-branch                                    |   9 -
 cri-common                                         |   1 -
 cri-getplatforms                                   |   2 +-
 crontab                                            |   4 +-
 daily-cron-email-real--rumpuserxen                 |   4 -
 daily-cron-email-real-bisectcomplete--rumpuserxen  |   4 -
 make-flight                                        |  48 +----
 mfi-common                                         |  37 ----
 overlay-persistent-net/etc/init.d/udev-finish      |  22 +++
 .../etc/udev/rule_generator.functions              | 113 ++++++++++++
 .../etc/udev/rules.d/73-usb-net-by-mac.rules       |   0
 .../etc/udev/rules.d/75-net-description.rules      |   0
 .../udev/rules.d/75-persistent-net-generator.rules | 143 ++++++++++++++
 overlay-persistent-net/etc/udev/udev-finish        |   9 +
 overlay-persistent-net/etc/udev/write_net_rules    | 152 +++++++++++++++
 .../lib/udev/rule_generator.functions              |   1 +
 overlay-persistent-net/lib/udev/udev-finish        |   1 +
 overlay-persistent-net/lib/udev/write_net_rules    |   1 +
 production-config                                  |   3 +
 production-config-cambridge                        |   1 +
 sg-run-job                                         |  26 ---
 ts-debian-di-install                               |   4 +-
 ts-debian-fixup                                    |  23 ++-
 ts-debian-hvm-install                              |   3 +
 ts-guests-nbd-mirror                               |  51 ++++-
 ts-host-install                                    |  23 ++-
 ts-kernel-build                                    |  14 ++
 ts-leak-check                                      |   1 +
 ts-rumprun-bake                                    |  88 ---------
 ts-rumprun-build                                   | 103 -----------
 ts-rumprun-demo-build                              |  67 -------
 ts-rumprun-demo-setup                              |  54 ------
 ts-rumprun-demo-xenstorels                         | 113 ------------
 ts-rumprun-test-prep                               |  37 ----
 ts-xen-build                                       |   4 +
 ts-xen-build-prep                                  |  16 +-
 ts-xen-install                                     |  12 +-
 52 files changed, 803 insertions(+), 855 deletions(-)
 delete mode 100644 Osstest/RumpRun.pm
 delete mode 100644 Osstest/Toolstack/rumprun.pm
 delete mode 100644 allow.rumprun
 delete mode 100644 daily-cron-email-real--rumpuserxen
 delete mode 100644 daily-cron-email-real-bisectcomplete--rumpuserxen
 create mode 100755 overlay-persistent-net/etc/init.d/udev-finish
 create mode 100644 overlay-persistent-net/etc/udev/rule_generator.functions
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-net-description.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
 create mode 100755 overlay-persistent-net/etc/udev/udev-finish
 create mode 100755 overlay-persistent-net/etc/udev/write_net_rules
 create mode 120000 overlay-persistent-net/lib/udev/rule_generator.functions
 create mode 120000 overlay-persistent-net/lib/udev/udev-finish
 create mode 120000 overlay-persistent-net/lib/udev/write_net_rules
 delete mode 100755 ts-rumprun-bake
 delete mode 100755 ts-rumprun-build
 delete mode 100755 ts-rumprun-demo-build
 delete mode 100755 ts-rumprun-demo-setup
 delete mode 100755 ts-rumprun-demo-xenstorels
 delete mode 100755 ts-rumprun-test-prep

-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 00/62] Update to Debian stable (stretch)
@ 2019-04-10 14:23     ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: committers, Ian Jackson

This, finally, is the series to update osstest to Debian stretch.
This is very urgent because Debian have been removing parts of jessie
from their servers, in a rather unhelpful and not entirely controlled
manner.  Consequently, currently osstest is not reliable with jessie.

I am going to push this series to osstest pretest immediately without
waiting for acks/reviews/etc.  I expect it to trip two regressions in
the osstest push gate, which I will force push.

One effect of this series is to put into service the two ThunderX
arm64 machines, rochester[01], which are supportable in stretch but
not jessie.

There seem to be a number of outstanding problems which I decided were
not blockers:

 * test-amd64-amd64-xl-qcow2 fails because the xvd driver fails to
   freeze during the Linux guest suspend.  This seems to be a real bug
   of some kind and needs investigation.

 * I experienced difficulties with the 4 Arndale devboards: high
   probability guest start failures.  For now I have marked those
   nodes as unsuitable for use with stretch, which will, effectively,
   take them out of service - and leave us with a lack of armhf
   capacity.  It is possible that this problem is due to the
   ifupdown-hotplug issue, now addressed, so I plan to retest.

 * The serial output from the new rochester arm64 machines is missing
   some of the grub bootloader messages (and this is detected by one
   of the examine jobs).  I may need help from someone familiar with
   these machines' hardware/firmware.

 * stretch did not appear to work properly on joubertin[01] and
   merlot[01] (x86 boxes).  I have marked them to be not used with
   stretch.  They will need to be retested and the problems
   investigated (if indeed the problems still remain after other fixes
   which are now in this series).

 * I have two bug reports / patches to go upstream to Debian: a boot
   ordering bug with ifupdown and udev, and a bug in fishdescriptor.

There are a couple of occurrences in this series of changes which
break things followed by patches to fix them up.  I have not bothered
squashing/reorganising those.

Ian Jackson (41):
  power: Fix uninitialised variable warning
  Debian: Fix http:// url for bugs.xenproject.org
  contents_make_cpio: Include symlinks
  contents_make_cpio: Make files owned by root
  overlay-persistent-net: Copy from jessie
  persistent-net: Add overlay on installed systems >= stretch
  persistent-net: Add overlay in installer >= stretch
  ts-host-install: Break out $persistent_net_rules
  ts-host-install: Unconditionally mkdir -p /etc/udev/rules.d
  ts-host-install: Put canary in 70-persistent-net.rules
  persistent-net: Include initramfs script to copy to target
  persistent-net: Set net.ifnames=0 in di_installcmdline_core
  ts-kernel-build: Enable some additional drivers for Thunder-X
  TestSupport: Move `stashed files' and `next_unique_name' earlier
  TestSupport: Move `target_somefile_getleaf' earlier
  TestSupport: target_somefile_leaf rename and change a variable
  TestSupport: Provide target_getfile_root_stash
  ts-guests-nbd-mirror: Use target_getfile_root_stash
  preseed_base: chmod ssh host private keys to placate sshd
  preseed_base: break out debian_overlays_fixup_cmd
  ts-debian-fixup: Use debian_overlays_fixup_cmd
  preseed_hook_command: allow specifying di keys other than preseed/*
  preseed_hook_installscript: Use partman/early_command, not preseed/
  Debian: preseed_hook_installscript: New $atonce option
  Debian: partman scripts: Run right away too
  Debian: set partman-lvm/device_remove_lvm_span
  Debian: Add reference to bug numbers for erase-other-disks
  dm restrict audit: actually install right package for fishdescriptor
  Debian: Move preseed_backports_packages earlier
  dm restrict audit: actually install fishdescriptor in host
  dm restrict audit: always install (some) chiark-scripts
  target_install_packages: Consistently use qw(...) rather than '...'
  ts-xen-install: Install libpciaccess0
  ts-debian-hvm-install: Honour linux_boot_append target var
  make-flight: shadow test: Disable kpti in guests
  platforms: Pass suite to get_arch_platforms
  platforms: Honour suite in get_arch_platforms
  dm restrict, fishdescriptor: Update to a fixed chiark-scripts
  Debian: Fix /lib/udev/ifupdown-hotplug to not run if / is ro
  Debian: Fix /lib/udev/ifupdown-hotplug in guests from debootstrap
  production-config-cambridge: Provide TftpDiVersion_stretch

Julien Grall (2):
  stretch: Use chainloading when booting using GRUB on Arm64
  ts-xen-build: Enable ITS driver in Xen

Wei Liu (19):
  gitignore: ignore vim swap file
  ts-xen-build-prep: only install w3c-dtd-xhtml for suites <Stretch
  ts-xen-build-prep: install packages for suites >jessie
  ts-xen-install: install some packages on stretch
  Debian.pm: use sysvinit-core instead of systemd
  ts-leak-check: suppress systemd-shim, which leaks in stretch
  ts-host-install: don't use the new nic naming scheme
  ts-debian-fixup: merge origin extra= to our own if necessary
  ts-debian-fixup: append noresume
  ts-xen-build-prep: install e2fslibs-dev
  ts-guests-nbd-mirror: make it work with stretch
  Extend workaround `clk_ignore_unused' to stretch
  adjust how to skip bootloader installation for arm32, in Stretch
  ts-debian-di-install: use gho to pick d-i
  make-flight: guest should use jessie to test pvgrub
  Drop rumprun tests
  ts-guests-nbd-mirror: use target_{get,put}file_root to transfter cfg
  ts-kernel-build: disable host1x, which doesn't build
  Switch to Debian Stretch

 .gitignore                                         |   1 +
 Osstest.pm                                         |   2 +-
 Osstest/Debian.pm                                  | 205 ++++++++++++++-------
 Osstest/HostDB/Executive.pm                        |  10 +-
 Osstest/HostDB/Static.pm                           |   4 +-
 Osstest/RumpRun.pm                                 |  68 -------
 Osstest/TestSupport.pm                             | 115 ++++++------
 Osstest/Toolstack/rumprun.pm                       |  33 ----
 allow.all                                          |   1 -
 allow.rumprun                                      |   1 -
 ap-common                                          |   7 -
 ap-fetch-version                                   |   4 -
 ap-fetch-version-old                               |   5 -
 ap-print-url                                       |   3 -
 ap-push                                            |   5 -
 cr-daily-branch                                    |   9 -
 cri-common                                         |   1 -
 cri-getplatforms                                   |   2 +-
 crontab                                            |   4 +-
 daily-cron-email-real--rumpuserxen                 |   4 -
 daily-cron-email-real-bisectcomplete--rumpuserxen  |   4 -
 make-flight                                        |  48 +----
 mfi-common                                         |  37 ----
 overlay-persistent-net/etc/init.d/udev-finish      |  22 +++
 .../etc/udev/rule_generator.functions              | 113 ++++++++++++
 .../etc/udev/rules.d/73-usb-net-by-mac.rules       |   0
 .../etc/udev/rules.d/75-net-description.rules      |   0
 .../udev/rules.d/75-persistent-net-generator.rules | 143 ++++++++++++++
 overlay-persistent-net/etc/udev/udev-finish        |   9 +
 overlay-persistent-net/etc/udev/write_net_rules    | 152 +++++++++++++++
 .../lib/udev/rule_generator.functions              |   1 +
 overlay-persistent-net/lib/udev/udev-finish        |   1 +
 overlay-persistent-net/lib/udev/write_net_rules    |   1 +
 production-config                                  |   3 +
 production-config-cambridge                        |   1 +
 sg-run-job                                         |  26 ---
 ts-debian-di-install                               |   4 +-
 ts-debian-fixup                                    |  23 ++-
 ts-debian-hvm-install                              |   3 +
 ts-guests-nbd-mirror                               |  51 ++++-
 ts-host-install                                    |  23 ++-
 ts-kernel-build                                    |  14 ++
 ts-leak-check                                      |   1 +
 ts-rumprun-bake                                    |  88 ---------
 ts-rumprun-build                                   | 103 -----------
 ts-rumprun-demo-build                              |  67 -------
 ts-rumprun-demo-setup                              |  54 ------
 ts-rumprun-demo-xenstorels                         | 113 ------------
 ts-rumprun-test-prep                               |  37 ----
 ts-xen-build                                       |   4 +
 ts-xen-build-prep                                  |  16 +-
 ts-xen-install                                     |  12 +-
 52 files changed, 803 insertions(+), 855 deletions(-)
 delete mode 100644 Osstest/RumpRun.pm
 delete mode 100644 Osstest/Toolstack/rumprun.pm
 delete mode 100644 allow.rumprun
 delete mode 100644 daily-cron-email-real--rumpuserxen
 delete mode 100644 daily-cron-email-real-bisectcomplete--rumpuserxen
 create mode 100755 overlay-persistent-net/etc/init.d/udev-finish
 create mode 100644 overlay-persistent-net/etc/udev/rule_generator.functions
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-net-description.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
 create mode 100755 overlay-persistent-net/etc/udev/udev-finish
 create mode 100755 overlay-persistent-net/etc/udev/write_net_rules
 create mode 120000 overlay-persistent-net/lib/udev/rule_generator.functions
 create mode 120000 overlay-persistent-net/lib/udev/udev-finish
 create mode 120000 overlay-persistent-net/lib/udev/write_net_rules
 delete mode 100755 ts-rumprun-bake
 delete mode 100755 ts-rumprun-build
 delete mode 100755 ts-rumprun-demo-build
 delete mode 100755 ts-rumprun-demo-setup
 delete mode 100755 ts-rumprun-demo-xenstorels
 delete mode 100755 ts-rumprun-test-prep

-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 01/62] gitignore: ignore vim swap file
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 .gitignore | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitignore b/.gitignore
index 425506b6..f7e5b77f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
 *~
 *.bak
+*.swp
 tmp
 *.tmp
 bisection.ps
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 01/62] gitignore: ignore vim swap file
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 .gitignore | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitignore b/.gitignore
index 425506b6..f7e5b77f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
 *~
 *.bak
+*.swp
 tmp
 *.tmp
 bisection.ps
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 02/62] power: Fix uninitialised variable warning
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  power: Record approach used for power cycles in runvars
we introduced a reference to $r{$rv} which might be undef,
resulting in this:
  Use of uninitialized value in concatenation (.) or string at Osstest/TestSupport.pm line 1069.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 334cc2cb..d35a784b 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1023,7 +1023,7 @@ sub power_reboot_attempts ($$$;$$) {
 	    logm("power: rebooted $ho->{Name} (using $approach->{Name})");
 	    if (defined $record_runvar_tail) {
 		my $rv = "$ho->{Ident}_power_${record_runvar_tail}";
-		my $newval = $r{$rv}.(!!length($r{$rv}) and ',')
+		my $newval = ($r{$rv} // '').(!!length($r{$rv}) and ',')
 		    .$approach->{Name};
 		store_runvar($rv, $newval);
 	    }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 02/62] power: Fix uninitialised variable warning
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  power: Record approach used for power cycles in runvars
we introduced a reference to $r{$rv} which might be undef,
resulting in this:
  Use of uninitialized value in concatenation (.) or string at Osstest/TestSupport.pm line 1069.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 334cc2cb..d35a784b 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1023,7 +1023,7 @@ sub power_reboot_attempts ($$$;$$) {
 	    logm("power: rebooted $ho->{Name} (using $approach->{Name})");
 	    if (defined $record_runvar_tail) {
 		my $rv = "$ho->{Ident}_power_${record_runvar_tail}";
-		my $newval = $r{$rv}.(!!length($r{$rv}) and ',')
+		my $newval = ($r{$rv} // '').(!!length($r{$rv}) and ',')
 		    .$approach->{Name};
 		store_runvar($rv, $newval);
 	    }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 03/62] ts-xen-build-prep: only install w3c-dtd-xhtml for suites <stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

That package is not included in stretch.

That package was installed because the libvirt build needed it.
However libvirt builds fine without it in stretch.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-build-prep | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/ts-xen-build-prep b/ts-xen-build-prep
index 23bbbeb9..a15ab3df 100755
--- a/ts-xen-build-prep
+++ b/ts-xen-build-prep
@@ -206,11 +206,13 @@ sub prep () {
                       libglib2.0-dev liblzma-dev pkg-config
                       autoconf automake libtool xsltproc
                       libxml2-utils libxml2-dev
-                      libdevmapper-dev w3c-dtd-xhtml libxml-xpath-perl
-                      libelf-dev
+                      libdevmapper-dev libxml-xpath-perl libelf-dev
                       ccache nasm checkpolicy ebtables
                       libgnutls28-dev);
 
+    if ($ho->{Suite} =~ m/squeeze|wheezy|jessie/) {
+	push(@packages, "w3c-dtd-xhtml");
+    }
     if ($ho->{Suite} !~ m/squeeze|wheezy/) {
 	push(@packages, qw(ocaml-nox ocaml-findlib));
     }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 03/62] ts-xen-build-prep: only install w3c-dtd-xhtml for suites <stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

That package is not included in stretch.

That package was installed because the libvirt build needed it.
However libvirt builds fine without it in stretch.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-build-prep | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/ts-xen-build-prep b/ts-xen-build-prep
index 23bbbeb9..a15ab3df 100755
--- a/ts-xen-build-prep
+++ b/ts-xen-build-prep
@@ -206,11 +206,13 @@ sub prep () {
                       libglib2.0-dev liblzma-dev pkg-config
                       autoconf automake libtool xsltproc
                       libxml2-utils libxml2-dev
-                      libdevmapper-dev w3c-dtd-xhtml libxml-xpath-perl
-                      libelf-dev
+                      libdevmapper-dev libxml-xpath-perl libelf-dev
                       ccache nasm checkpolicy ebtables
                       libgnutls28-dev);
 
+    if ($ho->{Suite} =~ m/squeeze|wheezy|jessie/) {
+	push(@packages, "w3c-dtd-xhtml");
+    }
     if ($ho->{Suite} !~ m/squeeze|wheezy/) {
 	push(@packages, qw(ocaml-nox ocaml-findlib));
     }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 04/62] ts-xen-build-prep: install packages for suites >jessie
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The stubdom build needs texinfo.
The libvirt build needs autopoint.
The QEMU build needs libpciaccess-dev.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-build-prep | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-xen-build-prep b/ts-xen-build-prep
index a15ab3df..ca5735a1 100755
--- a/ts-xen-build-prep
+++ b/ts-xen-build-prep
@@ -222,6 +222,10 @@ sub prep () {
 	# jessie (>jessie?)
 	push(@packages, "libnl-route-3-dev");
     }
+    if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
+        push(@packages, qw(texinfo autopoint libpciaccess-dev));
+    }
+
     target_install_packages($ho, @packages);
     target_cmd_root($ho, "chmod -R a+r /usr/share/git-core/templates");
     # workaround for Debian #595728
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 04/62] ts-xen-build-prep: install packages for suites >jessie
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The stubdom build needs texinfo.
The libvirt build needs autopoint.
The QEMU build needs libpciaccess-dev.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-build-prep | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-xen-build-prep b/ts-xen-build-prep
index a15ab3df..ca5735a1 100755
--- a/ts-xen-build-prep
+++ b/ts-xen-build-prep
@@ -222,6 +222,10 @@ sub prep () {
 	# jessie (>jessie?)
 	push(@packages, "libnl-route-3-dev");
     }
+    if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
+        push(@packages, qw(texinfo autopoint libpciaccess-dev));
+    }
+
     target_install_packages($ho, @packages);
     target_cmd_root($ho, "chmod -R a+r /usr/share/git-core/templates");
     # workaround for Debian #595728
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 05/62] ts-xen-install: install some packages on stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The "route" command is now in that package.

libnl is needed when running xl.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v3: invert condition.
---
 ts-xen-install | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ts-xen-install b/ts-xen-install
index 8de94ac2..80952857 100755
--- a/ts-xen-install
+++ b/ts-xen-install
@@ -52,6 +52,9 @@ sub packages () {
                                libsdl1.2debian libglib2.0-0 liblzma5
 			       qemu-utils
                                netcat-openbsd));
+    if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
+        target_install_packages($ho, 'net-tools libnl-route-3-200');
+    }
     if ($ho->{Suite} =~ m/jessie/) {
         target_install_packages($ho, 'libnl-route-3-200');
     }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 05/62] ts-xen-install: install some packages on stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The "route" command is now in that package.

libnl is needed when running xl.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v3: invert condition.
---
 ts-xen-install | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ts-xen-install b/ts-xen-install
index 8de94ac2..80952857 100755
--- a/ts-xen-install
+++ b/ts-xen-install
@@ -52,6 +52,9 @@ sub packages () {
                                libsdl1.2debian libglib2.0-0 liblzma5
 			       qemu-utils
                                netcat-openbsd));
+    if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
+        target_install_packages($ho, 'net-tools libnl-route-3-200');
+    }
     if ($ho->{Suite} =~ m/jessie/) {
         target_install_packages($ho, 'libnl-route-3-200');
     }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 06/62] Debian.pm: use sysvinit-core instead of systemd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Install that packages for suites >wheezy, because they use systemd as
the default init.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 59c60d40..82b5fb40 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -812,7 +812,7 @@ sub preseed_base ($$$;@) {
 
     # Systemd doesn't honor osstest-confirm-booted service, which
     # breaks ts-leak-check.  Fall back to SysV init for now.
-    if ( $suite =~ /jessie/ ) {
+    if ( $suite !~ /squeeze|wheezy/ ) {
        preseed_hook_command($ho, 'late_command', $sfx, <<END)
 in-target apt-get install -y sysvinit-core
 END
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 06/62] Debian.pm: use sysvinit-core instead of systemd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Install that packages for suites >wheezy, because they use systemd as
the default init.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 59c60d40..82b5fb40 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -812,7 +812,7 @@ sub preseed_base ($$$;@) {
 
     # Systemd doesn't honor osstest-confirm-booted service, which
     # breaks ts-leak-check.  Fall back to SysV init for now.
-    if ( $suite =~ /jessie/ ) {
+    if ( $suite !~ /squeeze|wheezy/ ) {
        preseed_hook_command($ho, 'late_command', $sfx, <<END)
 in-target apt-get install -y sysvinit-core
 END
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 07/62] ts-leak-check: suppress systemd-shim, which leaks in stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-leak-check | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ts-leak-check b/ts-leak-check
index 678d0696..41e6245d 100755
--- a/ts-leak-check
+++ b/ts-leak-check
@@ -202,6 +202,7 @@ xenstore /vm
 xenstore /libxl
 
 process .* udevd
+process .* /.+/systemd-shim
 
 file /var/run/xenstored/db
 file /var/run/xenstored/db.debug
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 07/62] ts-leak-check: suppress systemd-shim, which leaks in stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-leak-check | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ts-leak-check b/ts-leak-check
index 678d0696..41e6245d 100755
--- a/ts-leak-check
+++ b/ts-leak-check
@@ -202,6 +202,7 @@ xenstore /vm
 xenstore /libxl
 
 process .* udevd
+process .* /.+/systemd-shim
 
 file /var/run/xenstored/db
 file /var/run/xenstored/db.debug
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 08/62] ts-host-install: don't use the new nic naming scheme
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-host-install b/ts-host-install
index 292733ba..9ab3de62 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -244,6 +244,10 @@ END
     # why this is repeated.
     push @hocmdline, "console=$console" unless $console eq "NONE";
 
+    # Don't use "Predictable Network Interface Names"
+    # https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
+    push @hocmdline, "net.ifnames=0" if $ho->{Suite} =~ m/stretch/;
+
     push @hocmdline,
         get_host_property($ho, "linux-boot-append $ho->{Suite}", ''),
         get_host_property($ho, "linux-boot-append $ho->{Suite} $r{arch}", '');
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 08/62] ts-host-install: don't use the new nic naming scheme
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-host-install b/ts-host-install
index 292733ba..9ab3de62 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -244,6 +244,10 @@ END
     # why this is repeated.
     push @hocmdline, "console=$console" unless $console eq "NONE";
 
+    # Don't use "Predictable Network Interface Names"
+    # https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
+    push @hocmdline, "net.ifnames=0" if $ho->{Suite} =~ m/stretch/;
+
     push @hocmdline,
         get_host_property($ho, "linux-boot-append $ho->{Suite}", ''),
         get_host_property($ho, "linux-boot-append $ho->{Suite} $r{arch}", '');
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 09/62] ts-debian-fixup: merge origin extra= to our own if necessary
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The original extra= was not removed, so there were two extra= in the
resulting config file.

It wasn't a problem for xl because the second extra= took precedence.
However libvirt tests would only pick up the first extra= so they
worked by chance.

Fix this issue by merging the original. If there isn't already extra=
in $cfg, use our own.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v3: handle situation when no extra= is in $cfg
---
 ts-debian-fixup | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 3e5cdb97..478dc2af 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -178,7 +178,11 @@ sub otherfixupcfg () {
         $extra .= " iommu=soft";
     }
 
-    $cfg .= "\nextra='$extra'\n";
+    if ($cfg =~ m/extra\s*=\s*['"](.*)['"]/) {
+	$cfg =~ s/extra\s*=\s*['"](.*)['"]/extra = '$1 $extra'/;
+    } else {
+	$cfg .= "extra = '$extra'\n";
+    }
 };
 
 sub writecfg () {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 09/62] ts-debian-fixup: merge origin extra= to our own if necessary
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The original extra= was not removed, so there were two extra= in the
resulting config file.

It wasn't a problem for xl because the second extra= took precedence.
However libvirt tests would only pick up the first extra= so they
worked by chance.

Fix this issue by merging the original. If there isn't already extra=
in $cfg, use our own.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v3: handle situation when no extra= is in $cfg
---
 ts-debian-fixup | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 3e5cdb97..478dc2af 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -178,7 +178,11 @@ sub otherfixupcfg () {
         $extra .= " iommu=soft";
     }
 
-    $cfg .= "\nextra='$extra'\n";
+    if ($cfg =~ m/extra\s*=\s*['"](.*)['"]/) {
+	$cfg =~ s/extra\s*=\s*['"](.*)['"]/extra = '$1 $extra'/;
+    } else {
+	$cfg .= "extra = '$extra'\n";
+    }
 };
 
 sub writecfg () {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 10/62] ts-debian-fixup: append noresume
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

See code comment for explanation.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Fix grammar error in comment.
---
 ts-debian-fixup | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 478dc2af..0e553d47 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -178,6 +178,16 @@ sub otherfixupcfg () {
         $extra .= " iommu=soft";
     }
 
+    # There might be stale entries in /etc/initramfs-tools/conf.d/resume which
+    # get stored in the initramfs. That introduces delay in guest booting which
+    # might cause tests to fail.
+    #
+    # This is particularly prominent in stretch when it tries to scan for the
+    # nonexistent device(s) for a long time. See also Debian bug #784810.
+    #
+    # Append noresume to fix the issue.
+    $extra .= " noresume";
+
     if ($cfg =~ m/extra\s*=\s*['"](.*)['"]/) {
 	$cfg =~ s/extra\s*=\s*['"](.*)['"]/extra = '$1 $extra'/;
     } else {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 10/62] ts-debian-fixup: append noresume
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

See code comment for explanation.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Fix grammar error in comment.
---
 ts-debian-fixup | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 478dc2af..0e553d47 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -178,6 +178,16 @@ sub otherfixupcfg () {
         $extra .= " iommu=soft";
     }
 
+    # There might be stale entries in /etc/initramfs-tools/conf.d/resume which
+    # get stored in the initramfs. That introduces delay in guest booting which
+    # might cause tests to fail.
+    #
+    # This is particularly prominent in stretch when it tries to scan for the
+    # nonexistent device(s) for a long time. See also Debian bug #784810.
+    #
+    # Append noresume to fix the issue.
+    $extra .= " noresume";
+
     if ($cfg =~ m/extra\s*=\s*['"](.*)['"]/) {
 	$cfg =~ s/extra\s*=\s*['"](.*)['"]/extra = '$1 $extra'/;
     } else {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 11/62] ts-xen-build-prep: install e2fslibs-dev
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The in-tree libfsimage ext2fs implementation can't handle 64bit
enabled ext4, which is the default in stretch.

Installing e2fslibs-dev causes libfsimage to pick up the packaged
ext2fs implementation.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
 ts-xen-build-prep | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/ts-xen-build-prep b/ts-xen-build-prep
index ca5735a1..c38ab36d 100755
--- a/ts-xen-build-prep
+++ b/ts-xen-build-prep
@@ -226,6 +226,12 @@ sub prep () {
         push(@packages, qw(texinfo autopoint libpciaccess-dev));
     }
 
+    # The in-tree ext4 support in libfsimage can't cope with 64bit ext4 on
+    # 32bit build. Use the packaged library.
+    if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
+        push(@packages, qw(e2fslibs-dev));
+    }
+
     target_install_packages($ho, @packages);
     target_cmd_root($ho, "chmod -R a+r /usr/share/git-core/templates");
     # workaround for Debian #595728
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 11/62] ts-xen-build-prep: install e2fslibs-dev
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The in-tree libfsimage ext2fs implementation can't handle 64bit
enabled ext4, which is the default in stretch.

Installing e2fslibs-dev causes libfsimage to pick up the packaged
ext2fs implementation.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
 ts-xen-build-prep | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/ts-xen-build-prep b/ts-xen-build-prep
index ca5735a1..c38ab36d 100755
--- a/ts-xen-build-prep
+++ b/ts-xen-build-prep
@@ -226,6 +226,12 @@ sub prep () {
         push(@packages, qw(texinfo autopoint libpciaccess-dev));
     }
 
+    # The in-tree ext4 support in libfsimage can't cope with 64bit ext4 on
+    # 32bit build. Use the packaged library.
+    if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
+        push(@packages, qw(e2fslibs-dev));
+    }
+
     target_install_packages($ho, @packages);
     target_cmd_root($ho, "chmod -R a+r /usr/share/git-core/templates");
     # workaround for Debian #595728
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 12/62] ts-guests-nbd-mirror: make it work with stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

On the server side, only add oldstyle= and port= on wheezy and jessie.
stretch doesn't support or need those anymore.

On the client side, generate new style configuration file.

Reorder nbd-client setup a bit. Install it first, then write our own
configuration file, then start it.  This stops dpkg asking what to
do regarding configuration files.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v3: invert some tests, rearrange client setup code.
v4: Fix commit message grammar.
---
 ts-guests-nbd-mirror | 47 +++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 43 insertions(+), 4 deletions(-)

diff --git a/ts-guests-nbd-mirror b/ts-guests-nbd-mirror
index ca8300db..7ea31f7c 100755
--- a/ts-guests-nbd-mirror
+++ b/ts-guests-nbd-mirror
@@ -60,15 +60,19 @@ sub configserver () {
 [generic]
     user = root
 END
-    $scfg .= <<END unless $sho->{Suite} =~ m/sarge|lenny|squeeze/;
+
+    $scfg .= <<END if $sho->{Suite} =~ m/wheezy|jessie/;
     oldstyle = true
 END
+
     foreach my $v (@vols) {
 	$v->{Port}= unique_incrementing_runvar("${srvhost}_nextport",4000);
 	$v->{Path}= "/dev/$v->{Gho}{Vg}/$v->{Lv}";
 	$scfg.=<<END;
 [export$v->{Ix}]
     exportname = $v->{Path}
+END
+	$scfg.=<<END if $sho->{Suite} =~ m/wheezy|jessie/;
     port = $v->{Port}
 END
     }
@@ -79,9 +83,7 @@ END
     target_install_packages($sho, qw(nbd-server));
 }
 
-sub configclient () {
-    target_cmd_root($cho, "dpkg --purge nbd-client ||:");
-
+sub configclient_pre_stretch () {
     my $mydaemon= '/root/nbd-client-async';
     target_putfilecontents_root_stash($cho,10,<<'END',$mydaemon);
 #!/bin/sh
@@ -107,7 +109,44 @@ NBD_PORT[$v->{Ix}]=$v->{Port}
 END
     }
     target_putfilecontents_root_stash($cho,10,$ccfg,"/etc/nbd-client");
+}
+
+sub configclient_stretch_and_later () {
+    my $ccfg = <<END;
+# generated by $0
+END
+
+    foreach my $v (@vols) {
+	my $nbddev = "nbd$v->{Ix}";
+	$ccfg .= <<END;
+$nbddev $sho->{Name} export$v->{Ix}
+END
+    }
+
+    target_putfilecontents_root_stash($cho,10,$ccfg,"/etc/nbdtab");
+}
+
+sub configclient () {
+    target_cmd_root($cho, "dpkg --purge nbd-client ||:");
+
     target_install_packages($cho, qw(nbd-client));
+
+    target_cmd_root($cho, "/etc/init.d/nbd-client stop ||:");
+
+    if ($cho->{Suite} =~ m/wheezy|jessie/) {
+        configclient_pre_stretch();
+    } else {
+        configclient_stretch_and_later();
+	foreach my $v (@vols) {
+	    my $nbddev = "nbd$v->{Ix}";
+	    target_cmd_root($cho, <<END);
+mkdir -p /dev/$v->{Gho}{Vg}
+if ! test -L $v->{Path}; then ln -s /dev/$nbddev $v->{Path}; fi
+END
+	}
+    }
+
+    target_cmd_root($cho, "/etc/init.d/nbd-client start");
 }
 
 sub shuffleconfigs () {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 12/62] ts-guests-nbd-mirror: make it work with stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

On the server side, only add oldstyle= and port= on wheezy and jessie.
stretch doesn't support or need those anymore.

On the client side, generate new style configuration file.

Reorder nbd-client setup a bit. Install it first, then write our own
configuration file, then start it.  This stops dpkg asking what to
do regarding configuration files.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v3: invert some tests, rearrange client setup code.
v4: Fix commit message grammar.
---
 ts-guests-nbd-mirror | 47 +++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 43 insertions(+), 4 deletions(-)

diff --git a/ts-guests-nbd-mirror b/ts-guests-nbd-mirror
index ca8300db..7ea31f7c 100755
--- a/ts-guests-nbd-mirror
+++ b/ts-guests-nbd-mirror
@@ -60,15 +60,19 @@ sub configserver () {
 [generic]
     user = root
 END
-    $scfg .= <<END unless $sho->{Suite} =~ m/sarge|lenny|squeeze/;
+
+    $scfg .= <<END if $sho->{Suite} =~ m/wheezy|jessie/;
     oldstyle = true
 END
+
     foreach my $v (@vols) {
 	$v->{Port}= unique_incrementing_runvar("${srvhost}_nextport",4000);
 	$v->{Path}= "/dev/$v->{Gho}{Vg}/$v->{Lv}";
 	$scfg.=<<END;
 [export$v->{Ix}]
     exportname = $v->{Path}
+END
+	$scfg.=<<END if $sho->{Suite} =~ m/wheezy|jessie/;
     port = $v->{Port}
 END
     }
@@ -79,9 +83,7 @@ END
     target_install_packages($sho, qw(nbd-server));
 }
 
-sub configclient () {
-    target_cmd_root($cho, "dpkg --purge nbd-client ||:");
-
+sub configclient_pre_stretch () {
     my $mydaemon= '/root/nbd-client-async';
     target_putfilecontents_root_stash($cho,10,<<'END',$mydaemon);
 #!/bin/sh
@@ -107,7 +109,44 @@ NBD_PORT[$v->{Ix}]=$v->{Port}
 END
     }
     target_putfilecontents_root_stash($cho,10,$ccfg,"/etc/nbd-client");
+}
+
+sub configclient_stretch_and_later () {
+    my $ccfg = <<END;
+# generated by $0
+END
+
+    foreach my $v (@vols) {
+	my $nbddev = "nbd$v->{Ix}";
+	$ccfg .= <<END;
+$nbddev $sho->{Name} export$v->{Ix}
+END
+    }
+
+    target_putfilecontents_root_stash($cho,10,$ccfg,"/etc/nbdtab");
+}
+
+sub configclient () {
+    target_cmd_root($cho, "dpkg --purge nbd-client ||:");
+
     target_install_packages($cho, qw(nbd-client));
+
+    target_cmd_root($cho, "/etc/init.d/nbd-client stop ||:");
+
+    if ($cho->{Suite} =~ m/wheezy|jessie/) {
+        configclient_pre_stretch();
+    } else {
+        configclient_stretch_and_later();
+	foreach my $v (@vols) {
+	    my $nbddev = "nbd$v->{Ix}";
+	    target_cmd_root($cho, <<END);
+mkdir -p /dev/$v->{Gho}{Vg}
+if ! test -L $v->{Path}; then ln -s /dev/$nbddev $v->{Path}; fi
+END
+	}
+    }
+
+    target_cmd_root($cho, "/etc/init.d/nbd-client start");
 }
 
 sub shuffleconfigs () {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 13/62] Extend workaround `clk_ignore_unused' to stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Stefano Stabellini, Wei Liu, Julien Grall

From: Wei Liu <wei.liu2@citrix.com>

This is https://bugs.xenproject.org/xen/bug/45

Without that parameter we lose uart output.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien.grall@linaro.org>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 82b5fb40..91bffdff 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -241,7 +241,7 @@ END
 	push @xenkopt, $xenkopt;
 	# http://bugs.xenproject.org/xen/bug/45
 	push @xenkopt, "clk_ignore_unused"
-	    if $ho->{Suite} =~ m/wheezy|jessie/;
+	    if $ho->{Suite} =~ m/wheezy|jessie|stretch/;
 
 	$xenkopt = join ' ', @xenkopt;
 	logm("Dom0 Linux options: $xenkopt");
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 13/62] Extend workaround `clk_ignore_unused' to stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Stefano Stabellini, Wei Liu, Julien Grall

From: Wei Liu <wei.liu2@citrix.com>

This is https://bugs.xenproject.org/xen/bug/45

Without that parameter we lose uart output.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien.grall@linaro.org>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 82b5fb40..91bffdff 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -241,7 +241,7 @@ END
 	push @xenkopt, $xenkopt;
 	# http://bugs.xenproject.org/xen/bug/45
 	push @xenkopt, "clk_ignore_unused"
-	    if $ho->{Suite} =~ m/wheezy|jessie/;
+	    if $ho->{Suite} =~ m/wheezy|jessie|stretch/;
 
 	$xenkopt = join ' ', @xenkopt;
 	logm("Dom0 Linux options: $xenkopt");
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 14/62] adjust how to skip bootloader installation for arm32, in Stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Change case of suite names in comment.
---
 Osstest/Debian.pm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 91bffdff..85b1890d 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1041,7 +1041,11 @@ END
 	# actually does what we need, but the installer doesn't treat
 	# that as a "bootloader".
 	$preseed_file.= (<<END);
+        # jessie and earlier
 d-i     nobootloader/confirmation_common boolean true
+        # stretch and later
+d-i     grub-installer/skip boolean true
+d-i     lilo-installer/skip boolean true
 END
 
         # Debian Bug #771949 means that update-menu-list always
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 14/62] adjust how to skip bootloader installation for arm32, in Stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Change case of suite names in comment.
---
 Osstest/Debian.pm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 91bffdff..85b1890d 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1041,7 +1041,11 @@ END
 	# actually does what we need, but the installer doesn't treat
 	# that as a "bootloader".
 	$preseed_file.= (<<END);
+        # jessie and earlier
 d-i     nobootloader/confirmation_common boolean true
+        # stretch and later
+d-i     grub-installer/skip boolean true
+d-i     lilo-installer/skip boolean true
 END
 
         # Debian Bug #771949 means that update-menu-list always
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 15/62] ts-debian-di-install: use gho to pick d-i
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The original code used ho which gave us the host suite, but we wanted
the guest suite.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-di-install | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ts-debian-di-install b/ts-debian-di-install
index 60079712..361a1710 100755
--- a/ts-debian-di-install
+++ b/ts-debian-di-install
@@ -152,8 +152,8 @@ sub setup_netboot($$$)
 	die if $r{ "$gho->{Guest}_netboot_kernel" }
 	||     $r{ "$gho->{Guest}_netboot_ramdisk" };
 
-	my $di_path = $c{TftpPath}.'/'.$ho->{Tftp}{DiBase}.'/'.${arch}.'/'.
-	    debian_guest_di_version($ho).'-'.$ho->{Suite};
+	my $di_path = $c{TftpPath}.'/'.$gho->{Tftp}{DiBase}.'/'.${arch}.'/'.
+	    debian_guest_di_version($gho).'-'.$gho->{Suite};
 
         if (${arch} =~ m/amd64|i386/) {
 	    $kernel = "$di_path/vmlinuz-xen";
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 15/62] ts-debian-di-install: use gho to pick d-i
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The original code used ho which gave us the host suite, but we wanted
the guest suite.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-di-install | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ts-debian-di-install b/ts-debian-di-install
index 60079712..361a1710 100755
--- a/ts-debian-di-install
+++ b/ts-debian-di-install
@@ -152,8 +152,8 @@ sub setup_netboot($$$)
 	die if $r{ "$gho->{Guest}_netboot_kernel" }
 	||     $r{ "$gho->{Guest}_netboot_ramdisk" };
 
-	my $di_path = $c{TftpPath}.'/'.$ho->{Tftp}{DiBase}.'/'.${arch}.'/'.
-	    debian_guest_di_version($ho).'-'.$ho->{Suite};
+	my $di_path = $c{TftpPath}.'/'.$gho->{Tftp}{DiBase}.'/'.${arch}.'/'.
+	    debian_guest_di_version($gho).'-'.$gho->{Suite};
 
         if (${arch} =~ m/amd64|i386/) {
 	    $kernel = "$di_path/vmlinuz-xen";
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 16/62] make-flight: guest should use jessie to test pvgrub
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Juergen Gross, Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

stretch has 64bit feature enabled for ext4, which pvgrub can't cope.
We want to continue to test pvgrub, so specify jessie in the guest
suite field.

A consequence is that this test will test jessie forever.  Eventually
jessie will rot so badly that this test fails and then we will no
longer be testing pvgrub1.  Hopefully by then no-one will be using it.

CC: Juergen Gross <jgross@suse.com>
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Adjust commit message slightly.
---
 make-flight | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/make-flight b/make-flight
index 93c82a21..2f875125 100755
--- a/make-flight
+++ b/make-flight
@@ -608,8 +608,8 @@ do_pvgrub_tests () {
   job_create_test test-$xenarch$kern-$dom0arch-amd64-pvgrub     \
     test-debian-di xl $xenarch $dom0arch                        \
       debian_arch=amd64                                         \
-      debian_suite=$guestsuite                                  \
-      debian_di_version=$guest_di_version                       \
+      debian_suite=jessie                                       \
+      debian_di_version=`getconfig_TftpDiVersion_suite jessie`  \
       debian_method=netboot                                     \
       debian_bootloader=pvgrub                                  \
       all_hostflags=$most_hostflags                             \
@@ -617,8 +617,8 @@ do_pvgrub_tests () {
   job_create_test test-$xenarch$kern-$dom0arch-i386-pvgrub      \
     test-debian-di xl $xenarch $dom0arch                        \
       debian_arch=i386                                          \
-      debian_suite=$guestsuite                                  \
-      debian_di_version=$guest_di_version                       \
+      debian_suite=jessie                                       \
+      debian_di_version=`getconfig_TftpDiVersion_suite jessie`  \
       debian_method=netboot                                     \
       debian_bootloader=pvgrub                                  \
       all_hostflags=$most_hostflags
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 16/62] make-flight: guest should use jessie to test pvgrub
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Juergen Gross, Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

stretch has 64bit feature enabled for ext4, which pvgrub can't cope.
We want to continue to test pvgrub, so specify jessie in the guest
suite field.

A consequence is that this test will test jessie forever.  Eventually
jessie will rot so badly that this test fails and then we will no
longer be testing pvgrub1.  Hopefully by then no-one will be using it.

CC: Juergen Gross <jgross@suse.com>
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Adjust commit message slightly.
---
 make-flight | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/make-flight b/make-flight
index 93c82a21..2f875125 100755
--- a/make-flight
+++ b/make-flight
@@ -608,8 +608,8 @@ do_pvgrub_tests () {
   job_create_test test-$xenarch$kern-$dom0arch-amd64-pvgrub     \
     test-debian-di xl $xenarch $dom0arch                        \
       debian_arch=amd64                                         \
-      debian_suite=$guestsuite                                  \
-      debian_di_version=$guest_di_version                       \
+      debian_suite=jessie                                       \
+      debian_di_version=`getconfig_TftpDiVersion_suite jessie`  \
       debian_method=netboot                                     \
       debian_bootloader=pvgrub                                  \
       all_hostflags=$most_hostflags                             \
@@ -617,8 +617,8 @@ do_pvgrub_tests () {
   job_create_test test-$xenarch$kern-$dom0arch-i386-pvgrub      \
     test-debian-di xl $xenarch $dom0arch                        \
       debian_arch=i386                                          \
-      debian_suite=$guestsuite                                  \
-      debian_di_version=$guest_di_version                       \
+      debian_suite=jessie                                       \
+      debian_di_version=`getconfig_TftpDiVersion_suite jessie`  \
       debian_method=netboot                                     \
       debian_bootloader=pvgrub                                  \
       all_hostflags=$most_hostflags
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 17/62] stretch: Use chainloading when booting using GRUB on Arm64
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Julien Grall, Wei Liu

From: Julien Grall <julien.grall@arm.com>

The GRUB package in stretch is not able to boot Xen on Arm64.
Use chainloading as we did for jessie for the time being.

Note that a bug has been filled on Debian to integrate Xen
pactches for the next release (see [1]).

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884770

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Correct suite name capitalisation in commit message and comment.
---
 Osstest/Debian.pm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 85b1890d..80b4cf37 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -435,10 +435,10 @@ sub setupboot_grub2 ($$$$) {
     my $rmenu= '/boot/grub/grub.cfg';
     my $kernkey= (defined $xenhopt ? 'KernDom0' : 'KernOnly');
 
-    # Grub2 on Jessie/arm* doesn't do multiboot, so we must chainload.
+    # Grub2 on jessie/stretch ARM* doesn't do multiboot, so we must chainload.
     my $need_uefi_chainload =
         get_host_property($ho, "firmware", "") eq "uefi" &&
-        $ho->{Suite} =~ m/jessie/ && $r{arch} =~ m/^arm/;
+        $ho->{Suite} =~ m/jessie|stretch/ && $r{arch} =~ m/^arm/;
 
     my $parsemenu= sub {
         my $f= bl_getmenu_open($ho, $rmenu, "$stash/$ho->{Name}--grub.cfg.1");
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 17/62] stretch: Use chainloading when booting using GRUB on Arm64
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Julien Grall, Wei Liu

From: Julien Grall <julien.grall@arm.com>

The GRUB package in stretch is not able to boot Xen on Arm64.
Use chainloading as we did for jessie for the time being.

Note that a bug has been filled on Debian to integrate Xen
pactches for the next release (see [1]).

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884770

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Correct suite name capitalisation in commit message and comment.
---
 Osstest/Debian.pm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 85b1890d..80b4cf37 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -435,10 +435,10 @@ sub setupboot_grub2 ($$$$) {
     my $rmenu= '/boot/grub/grub.cfg';
     my $kernkey= (defined $xenhopt ? 'KernDom0' : 'KernOnly');
 
-    # Grub2 on Jessie/arm* doesn't do multiboot, so we must chainload.
+    # Grub2 on jessie/stretch ARM* doesn't do multiboot, so we must chainload.
     my $need_uefi_chainload =
         get_host_property($ho, "firmware", "") eq "uefi" &&
-        $ho->{Suite} =~ m/jessie/ && $r{arch} =~ m/^arm/;
+        $ho->{Suite} =~ m/jessie|stretch/ && $r{arch} =~ m/^arm/;
 
     my $parsemenu= sub {
         my $f= bl_getmenu_open($ho, $rmenu, "$stash/$ho->{Name}--grub.cfg.1");
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 18/62] Drop rumprun tests
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

These have been failing for some time and it doesn't any more look
like this will be an attractive route to stub device models.  (At
least two Xen downstream projects are using Linux-based stub device
models.)

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Expand commit message.
---
 Osstest/RumpRun.pm                                |  68 -------------
 Osstest/Toolstack/rumprun.pm                      |  33 -------
 allow.all                                         |   1 -
 allow.rumprun                                     |   1 -
 ap-common                                         |   7 --
 ap-fetch-version                                  |   4 -
 ap-fetch-version-old                              |   5 -
 ap-print-url                                      |   3 -
 ap-push                                           |   5 -
 cr-daily-branch                                   |   9 --
 cri-common                                        |   1 -
 crontab                                           |   4 +-
 daily-cron-email-real--rumpuserxen                |   4 -
 daily-cron-email-real-bisectcomplete--rumpuserxen |   4 -
 make-flight                                       |  35 -------
 mfi-common                                        |  37 -------
 sg-run-job                                        |  26 -----
 ts-rumprun-bake                                   |  88 -----------------
 ts-rumprun-build                                  | 103 --------------------
 ts-rumprun-demo-build                             |  67 -------------
 ts-rumprun-demo-setup                             |  54 -----------
 ts-rumprun-demo-xenstorels                        | 113 ----------------------
 ts-rumprun-test-prep                              |  37 -------
 23 files changed, 2 insertions(+), 707 deletions(-)
 delete mode 100644 Osstest/RumpRun.pm
 delete mode 100644 Osstest/Toolstack/rumprun.pm
 delete mode 100644 allow.rumprun
 delete mode 100644 daily-cron-email-real--rumpuserxen
 delete mode 100644 daily-cron-email-real-bisectcomplete--rumpuserxen
 delete mode 100755 ts-rumprun-bake
 delete mode 100755 ts-rumprun-build
 delete mode 100755 ts-rumprun-demo-build
 delete mode 100755 ts-rumprun-demo-setup
 delete mode 100755 ts-rumprun-demo-xenstorels
 delete mode 100755 ts-rumprun-test-prep

diff --git a/Osstest/RumpRun.pm b/Osstest/RumpRun.pm
deleted file mode 100644
index f46d520b..00000000
--- a/Osstest/RumpRun.pm
+++ /dev/null
@@ -1,68 +0,0 @@
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-package Osstest::RumpRun;
-
-use strict;
-use warnings;
-
-use Osstest::TestSupport;
-
-BEGIN {
-    use Exporter ();
-    our ($VERSION, @ISA, @EXPORT, @EXPORT_OK, %EXPORT_TAGS);
-    $VERSION     = 1.00;
-    @ISA         = qw(Exporter);
-    @EXPORT      = qw(
-		      rumprun_guest_create
-		    );
-    %EXPORT_TAGS = ( );
-
-    @EXPORT_OK   = qw();
-}
-
-sub rumprun_guest_create ($) {
-    my ($gho) = @_;
-    my $ho = $gho->{Host};
-    my $gn = $gho->{Guest};
-    guest_prepare_disk($gho);
-
-    my $rumprun = target_var($gho, 'rumprun_path');
-    if (!$rumprun) {
-	logm("finding rumprun to use for $gho->{Name} on $ho->{Name}");
-	my $buildjob = $r{guests_rumprunbuildjob} // # todo: eliminate this
-	    target_var($gho, 'rumprunbuildjob');
-	my $rumprundist = target_extract_jobdistpath_subdir
-	    ($ho, "rumprun-rumprun-g-$gho->{Name}", "rumprun", $buildjob);
-	$rumprun = "$rumprundist/rumprun";
-	store_runvar("${gn}_rumprun_path", $rumprun);
-    }
-
-    my $imagepath = $r{"${gn}_imagepath"};
-    my $cmdline = guest_var($gho, 'cmdline', undef);
-
-    my $cmd = "$rumprun xen";
-    $cmd .= " -N $gn";
-    $cmd .= " -I xenif0,xenif,mac=$gho->{Ether}";
-    $cmd .= " -W xenif0,inet,dhcp";
-    $cmd .= " $imagepath";
-    $cmd .= " $cmdline";
-
-    target_cmd_root($ho, $cmd, 100);
-}
-
-1;
diff --git a/Osstest/Toolstack/rumprun.pm b/Osstest/Toolstack/rumprun.pm
deleted file mode 100644
index 74742c45..00000000
--- a/Osstest/Toolstack/rumprun.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2014 Citrix Inc.
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-package Osstest::Toolstack::rumprun;
-
-use strict;
-use warnings;
-
-use Osstest::RumpRun;
-
-# Defer to xl driver for most things
-use parent qw(Osstest::Toolstack::xl);
-
-sub create ($$) {
-    my ($self,$gho) = @_;
-    rumprun_guest_create($gho);
-}
-
-1;
diff --git a/allow.all b/allow.all
index 5d8d9cb7..894b69ea 100644
--- a/allow.all
+++ b/allow.all
@@ -3,6 +3,5 @@ build-@@                        logs-capture@@
 test-@@-pcipt@@
 test-@@-qemuu-@@		guest-localmigrate
 test-@@-win7-@@			guest-stop
-test-@@-rumprun-@@		rumprun-demo-xenstorels/xenstorels.repeat
 @@-arm64			hosts-allocate
 @@-arm64-@@			hosts-allocate
diff --git a/allow.rumprun b/allow.rumprun
deleted file mode 100644
index 436417b1..00000000
--- a/allow.rumprun
+++ /dev/null
@@ -1 +0,0 @@
-!test-@@-rumprun-@@		rumprun-demo-xenstorels/xenstorels.repeat
diff --git a/ap-common b/ap-common
index 87df7948..6ae7cce6 100644
--- a/ap-common
+++ b/ap-common
@@ -45,12 +45,6 @@
 : ${PUSH_TREE_LIBVIRT:=$XENBITS:/home/xen/git/libvirt.git}
 : ${BASE_TREE_LIBVIRT:=git://xenbits.xen.org/libvirt.git}
 
-: ${TREE_RUMPRUN:=https://github.com/rumpkernel/rumprun}
-# ^ really http://repo.rumpkernel.org/rumprun
-: ${TREEVCS_RUMPRUN:=git}
-: ${BASE_TREE_RUMPRUN:=git://xenbits.xen.org/osstest/rumprun.git}
-: ${PUSH_TREE_RUMPRUN:=$XENBITS:/home/xen/git/osstest/rumprun.git}
-
 : ${TREE_SEABIOS_UPSTREAM:=https://git.seabios.org/seabios.git}
 : ${PUSH_TREE_SEABIOS:=$XENBITS:/home/xen/git/osstest/seabios.git}
 : ${BASE_TREE_SEABIOS:=git://xenbits.xen.org/osstest/seabios.git}
@@ -83,7 +77,6 @@ fi
 : ${LOCALREV_XEN:=daily-cron.$branch}
 : ${LOCALREV_LINUX:=daily-cron.$branch}
 : ${LOCALREV_LIBVIRT:=daily-cron.$branch}
-: ${LOCALREV_RUMPRUN:=daily-cron.$branch}
 : ${LOCALREV_SEABIOS:=daily-cron.$branch}
 : ${LOCALREV_OVMF:=daily-cron.$branch}
 : ${LOCALREV_XTF:=daily-cron.$branch}
diff --git a/ap-fetch-version b/ap-fetch-version
index 87725bf0..9abfbcb5 100755
--- a/ap-fetch-version
+++ b/ap-fetch-version
@@ -90,10 +90,6 @@ libvirt)
 	repo_tree_rev_fetch_git libvirt \
 		$TREE_LIBVIRT master $LOCALREV_LIBVIRT
 	;;
-rumprun)
-	repo_tree_rev_fetch_git rumprun \
-		$TREE_RUMPRUN master $LOCALREV_RUMPRUN
-	;;
 seabios)
 	repo_tree_rev_fetch_git seabios \
 		$TREE_SEABIOS_UPSTREAM master $LOCALREV_SEABIOS
diff --git a/ap-fetch-version-old b/ap-fetch-version-old
index 18213e01..420db9f6 100755
--- a/ap-fetch-version-old
+++ b/ap-fetch-version-old
@@ -30,7 +30,6 @@ check_ap_fetch_placeholders
 : ${BASE_TAG_LINUX2639:=tested/2.6.39.x}
 : ${BASE_LOCALREV_LINUX:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_LIBVIRT:=daily-cron.$branch.old}
-: ${BASE_LOCALREV_RUMPRUN:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_SEABIOS:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_XTF:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_OVMF:=daily-cron.$branch.old}
@@ -99,10 +98,6 @@ libvirt)
 	repo_tree_rev_fetch_git libvirt \
 		$BASE_TREE_LIBVIRT $BASE_TAG_LIBVIRT $BASE_LOCALREV_LIBVIRT
 	;;
-rumprun)
-	repo_tree_rev_fetch_git rumprun \
-		$BASE_TREE_RUMPRUN xen-tested-master $BASE_LOCALREV_RUMPRUN
-	;;
 seabios)
 	repo_tree_rev_fetch_git seabios \
 		$BASE_TREE_SEABIOS xen-tested-master $BASE_LOCALREV_SEABIOS
diff --git a/ap-print-url b/ap-print-url
index e9934bc0..27bdbfae 100755
--- a/ap-print-url
+++ b/ap-print-url
@@ -52,9 +52,6 @@ linuxfirmware)
 libvirt)
 	echo $TREE_LIBVIRT
 	;;
-rumprun)
-	echo $TREE_RUMPRUN
-	;;
 seabios)
 	echo $TREE_SEABIOS_UPSTREAM
 	;;
diff --git a/ap-push b/ap-push
index ded33f63..eb212c05 100755
--- a/ap-push
+++ b/ap-push
@@ -37,7 +37,6 @@ TREE_LINUX=$PUSH_TREE_LINUX
 TREE_QEMU_UPSTREAM=$PUSH_TREE_QEMU_UPSTREAM
 TREE_XEN=$PUSH_TREE_XEN
 TREE_LIBVIRT=$PUSH_TREE_LIBVIRT
-TREE_RUMPRUN=$PUSH_TREE_RUMPRUN
 TREE_SEABIOS=$PUSH_TREE_SEABIOS
 TREE_OVMF=$PUSH_TREE_OVMF
 TREE_XTF=$PUSH_TREE_XTF
@@ -114,10 +113,6 @@ libvirt)
 	cd $repos/libvirt
 	git push $TREE_LIBVIRT $revision:refs/heads/xen-tested-master
 	;;
-rumprun)
-	cd $repos/rumprun
-	git push $TREE_RUMPRUN $revision:refs/heads/xen-tested-master
-	;;
 seabios)
 	cd $repos/seabios
 	git push $TREE_SEABIOS $revision:refs/heads/xen-tested-master
diff --git a/cr-daily-branch b/cr-daily-branch
index 49b8ad8e..5698b083 100755
--- a/cr-daily-branch
+++ b/cr-daily-branch
@@ -223,10 +223,6 @@ if [ "x$REVISION_LIBVIRT" = x ]; then
 	determine_version REVISION_LIBVIRT libvirt LIBVIRT
 	export REVISION_LIBVIRT
 fi
-if [ "x$REVISION_RUMPRUN" = x ]; then
-	determine_version REVISION_RUMPRUN rumprun RUMPRUN
-	export REVISION_RUMPRUN
-fi
 if [ "x$REVISION_XTF" = x ]; then
 	determine_version REVISION_XTF xtf XTF
 	export REVISION_XTF
@@ -278,11 +274,6 @@ libvirt)
 	realtree=libvirt
 	NEW_REVISION=$REVISION_LIBVIRT
 	;;
-rumprun)
-	realtree=rumprun
-	NEW_REVISION=$REVISION_RUMPRUN
-	export REVISION_LIBVIRT=disable
-	;;
 seabios)
 	realtree=seabios
 	NEW_REVISION=$REVISION_SEABIOS
diff --git a/cri-common b/cri-common
index 8d2d26cf..5a425824 100644
--- a/cri-common
+++ b/cri-common
@@ -76,7 +76,6 @@ select_xenbranch () {
 	linux-*)		tree=linux;	xenbranch=xen-unstable ;;
 	linuxfirmware)	    tree=linuxfirmware;	xenbranch=xen-unstable ;;
 	libvirt)		tree=libvirt;	xenbranch=xen-unstable ;;
-	rumprun)	      tree=rumprun; xenbranch=xen-unstable ;;
 	seabios)		tree=seabios;	xenbranch=xen-unstable ;;
 	xtf)			tree=xtf;	xenbranch=xen-unstable ;;
 	ovmf)			tree=ovmf;	xenbranch=xen-unstable ;;
diff --git a/crontab b/crontab
index e1e798a5..8d9b31f1 100755
--- a/crontab
+++ b/crontab
@@ -14,8 +14,8 @@ MAILTO=osstest-admin@xenproject.org
 18		9	* * 1,3,5	cd testing.git && BRANCHES='linux-next freebsd-master' 	./cr-for-branches branches -w "./cr-daily-branch --real"
 18		9	* * 3,7		cd testing.git && BRANCHES=xen-unstable-coverity ./cr-for-branches branches -w "./cr-daily-branch --real"
 34		15	23 * *		cd testing.git && BRANCHES=examine		./cr-for-branches branches -w "./cr-daily-branch --real"
-18		4	* * *		cd testing.git && BRANCHES='linux-3.0 libvirt rumprun' ./cr-for-branches branches -w "./cr-daily-branch --real"
-6-59/15   	*	* * *		cd testing.git && EXTRA_BRANCHES='xen-unstable-smoke linux-3.0 rumprun libvirt freebsd-master' ./cr-for-branches bisects -w "./cr-try-bisect --real"
+18		4	* * *		cd testing.git && BRANCHES='linux-3.0 libvirt' ./cr-for-branches branches -w "./cr-daily-branch --real"
+6-59/15   	*	* * *		cd testing.git && EXTRA_BRANCHES='xen-unstable-smoke linux-3.0 libvirt freebsd-master' ./cr-for-branches bisects -w "./cr-try-bisect --real"
 #8-59/5		*	* * *		cd bisects/adhoc.git &&	with-lock-ex -q data-tree-lock bash -c "./cr-try-bisect-adhoc; exit $?"
 22		8	* * *		cd testing.git && BRANCHES=maintjobs		./cr-for-branches . -w ./cr-all-branch-statuses ''
 3		4	* * *		savelog -c28 testing.git/tmp/cr-for-branches.log >/dev/null
diff --git a/daily-cron-email-real--rumpuserxen b/daily-cron-email-real--rumpuserxen
deleted file mode 100644
index 8f950780..00000000
--- a/daily-cron-email-real--rumpuserxen
+++ /dev/null
@@ -1,4 +0,0 @@
-To: xen-devel@lists.xenproject.org,
-    rumpkernel-builds@freelists.org,
-    osstest-admin@xenproject.org
-Bcc: osstest-output@lists.xenproject.org
diff --git a/daily-cron-email-real-bisectcomplete--rumpuserxen b/daily-cron-email-real-bisectcomplete--rumpuserxen
deleted file mode 100644
index 8f950780..00000000
--- a/daily-cron-email-real-bisectcomplete--rumpuserxen
+++ /dev/null
@@ -1,4 +0,0 @@
-To: xen-devel@lists.xenproject.org,
-    rumpkernel-builds@freelists.org,
-    osstest-admin@xenproject.org
-Bcc: osstest-output@lists.xenproject.org
diff --git a/make-flight b/make-flight
index 2f875125..151b1435 100755
--- a/make-flight
+++ b/make-flight
@@ -85,14 +85,6 @@ job_create_build_filter_callback () {
         *)			return 1 ;;
       esac
     ;;
-    rumprun)
-      case "$job" in
-        build-*-pvops)		;;
-        build-*-rumprun)	;;
-        build-*-*)		return 1 ;;
-        *)			;;
-      esac
-    ;;
   esac
   return 0
 }
@@ -139,15 +131,6 @@ job_create_test_filter_callback () {
     libvirt)
       if [ x$toolstack != xlibvirt ] ; then return 1; fi
       ;;
-    rumprun)
-      case "$job" in
-      *-rumprun-*)
-          ;;
-      *)
-          : "suppressed $job"
-          return 1;;
-      esac
-      ;;
     xtf)
       case "$xenarch:$dom0arch" in
           amd64:amd64) ;;
@@ -211,7 +194,6 @@ arch_branch_filter_callback () {
         qemu-upstream-4.2-testing) return 1;;
         qemu-upstream-4.3-testing) return 1;;
         qemu-upstream-4.4-testing) return 1;;
-        rumprun) return 1;;
         seabios) return 1;;
         ovmf) return 1;;
         esac
@@ -235,21 +217,6 @@ test_matrix_branch_filter_callback () {
   return 0
 }
 
-do_rumpkernel_tests () {
-  branch_wants_rumpkernel_tests || return 0
-
-  rumparch=$dom0arch
-  job_create_test test-$xenarch$kern-$dom0arch-rumprun-$rumparch \
-                      test-rumprun xl \
-            $xenarch $dom0arch                                       \
-            guests_rumprunbuildjob=${bfi}build-$rumparch-rumprun   \
-            nettest_builtimage=rumpimages:nettest \
-            nettest_cmdline=4096 \
-            xenstorels_builtimage=rumpimages:xenstorels              \
-            xenstorels_cmdline='ls -fp device'                       \
-            all_hostflags=$most_hostflags
-}
-
 do_freebsd_tests () {
 
   if [ $xenarch != amd64 -o $dom0arch != i386 -o "$kern" != "" ]; then
@@ -769,8 +736,6 @@ test_matrix_do_one () {
   *)                test_shim=y ;;
   esac
 
-  do_rumpkernel_tests
-
   # xend PV guest test on x86 only
   if [ x$test_xend = xy -a \( $dom0arch = "i386" -o $dom0arch = "amd64" \) ]; then
     job_create_test test-$xenarch$kern-$dom0arch-pv test-debian xend \
diff --git a/mfi-common b/mfi-common
index 83d3c713..f91156fe 100644
--- a/mfi-common
+++ b/mfi-common
@@ -31,16 +31,6 @@ stripy () {
   eval "$out_vn=\"\$out_$out_val\""
 }
 
-branch_wants_rumpkernel_tests () {
-  case "$branch" in
-  osstest*) return 0;;
-  rump*)    return 0;;
-  xen-*)    return 0;;
-  linux*)   return 0;;
-  *)        return 1;;
-  esac
-}
-
 branch_wants_migrupgrade_tests () {
   case "$branch" in
     xen-3.*-testing) return 1 ;;
@@ -445,33 +435,6 @@ create_build_jobs () {
         fi
     fi
 
-    if branch_wants_rumpkernel_tests; then
-
-    case $arch in
-    i386|amd64)
-    job_create_build build-$arch-rumprun build-rumprun               \
-                arch=$arch                                                   \
-        tree_xen=$TREE_XEN                                                   \
-                $RUNVARS $BUILD_RUNVARS $BUILD_RUMPRUN_RUNVARS $arch_runvars \
-                $hostos_runvars                                              \
-                host_hostflags=$build_hostflags                              \
-                buildjob=${bfi}build-$arch                                   \
-                tree_rumprun=$TREE_RUMPRUN			\
-          ${TREEVCS_RUMPRUN:+treevcs_rumprun=}${TREEVCS_RUMPRUN} \
-                revision_rumprun=$REVISION_RUMPRUN		\
-                tree_xen=$TREE_XEN                                           \
-                tree_qemuu=$TREE_QEMU_UPSTREAM                               \
-                revision_xen=$REVISION_XEN                                   \
-                revision_qemuu=$REVISION_QEMU_UPSTREAM                       \
-                tree_rumprun_rumpsrc=$TREE_RUMPRUN_RUMPSRC	\
-                ${TREEVCS_RUMPRUN_RUMPSRC:+treevcs_rumprun_rumpsrc=}${TREEVCS_RUMPRUN_RUMPSRC}
-                # rumpsrc-related runvars needed only for old rumpuser-xen
-                # (ie ones which need $bodges=1 in ts-rumprun-build)
-		;;
-    esac
-
-    fi
-
     case "$arch" in
     arm*) continue;; # don't do any other kernel builds
     esac
diff --git a/sg-run-job b/sg-run-job
index 7d27f415..56b6384a 100755
--- a/sg-run-job
+++ b/sg-run-job
@@ -649,22 +649,6 @@ proc test-guest-nomigr {g} {
     run-ts . =   ts-guest-destroy + host $g
 }
 
-proc need-hosts/test-rumprun {} { return host }
-proc run-job/test-rumprun {} {
-    run-ts . =   ts-rumprun-test-prep       + host
-    set g nettest
-    run-ts . =   ts-rumprun-demo-setup      + host $g
-    run-ts . =   ts-guest-start             + host $g
-    run-ts . =   ts-guest-destroy           + host $g
-    set g xenstorels
-    run-ts . =   ts-rumprun-demo-setup      + host + $g
-    run-ts . =   ts-rumprun-demo-xenstorels + host + $g
-    run-ts . =   ts-guest-destroy-hard      + host + $g
-    repeat-ts 150 =.repeat \
-                 ts-rumprun-demo-xenstorels + host + $g   + \; \
-                 ts-guest-destroy-hard        host   $g   +
-}
-
 if {[file exists sg-run-job-adhoc]} {
     source sg-run-job-adhoc
 }
@@ -712,7 +696,6 @@ proc need-hosts/host-examine-linux {} { examine-host-examine debian }
 proc need-hosts/build {}                { return BUILD_LINUX }
 proc need-hosts/build-kern {}           { return BUILD_LINUX }
 proc need-hosts/build-libvirt {}        { return BUILD_LINUX }
-proc need-hosts/build-rumprun {}        { return BUILD_LINUX }
 proc need-hosts/build-xtf {}            { return BUILD_LINUX }
 proc need-hosts/build-freebsd {}        { return BUILD_FREEBSD }
 proc need-hosts/build-xen-freebsd {}    { return BUILD_FREEBSD }
@@ -729,15 +712,6 @@ proc run-job/build-libvirt {} {
     run-ts . = ts-libvirt-build
 }
 
-proc run-job/build-rumprun {} {
-    run-ts . = ts-rumprun-build
-    run-ts . = ts-rumprun-demo-build + host + nettest rump-test-net
-    run-ts . xen-build ts-xen-build-rump + host --no-kconfig --
-    run-ts . = ts-rumprun-bake + host \
-        nettest :nettest:/rump-test-net \
-        xenstorels ::/usr/local/bin/xenstore-ls
-}
-
 proc run-job/build-xtf {} {
     run-ts . = ts-xtf-build
 }
diff --git a/ts-rumprun-bake b/ts-rumprun-bake
deleted file mode 100755
index fc50db92..00000000
--- a/ts-rumprun-bake
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# ts-rumprun-bake HOST IMAGENAME [JOB]:DIST:SUBPATH [IMAGENAME ... [... ...]]
-#
-# Generates a dist stash `rumpimages' containg files IMAGENAME
-# From the specified files
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-use Osstest::BuildSupport;
-
-tsreadconfig();
-
-our ($whhost,$gn) = @ARGV;
-selectbuildhost(\@ARGV);
-
-
-
-our %images;
-
-our $jobdir = target_jobdir($ho);
-our $imagesdir = $jobdir.'/rumpbake-images';
-our $rumpbake = $jobdir.'/rumprun/rumprun/bin/rumprun-bake';
-
-target_cmd($ho, "mkdir -p $imagesdir");
-
-sub bakeimage ($$) {
-    my ($name,$spec) = @_;
-    
-    $spec =~ m/^(.*?)\:(.*?)\:/ or die "$spec ?";
-    my $buildjob = $1;
-    my $execpart = $2;
-    my $execpath = $';
-
-    logm("baking rump image $name from $spec");
-
-#    my $rumpbake = target_extract_jobdistpath_subdir
-#	($ho, 'rumpbake-base', 'rumprun', $r{guests_rumprunbuildjob});
-#    $rumpbake = "$rumpbake/rumpbake";
-
-    my $execdist;
-    eval {
-	$execdist = target_extract_jobdistpath_subdir
-	    ($ho, "rumpbake-n-$name", $execpart, $buildjob || $job);
-    };
-    if ($@) {
-	logm "*** WARNING: skipping $name: $@";
-	return;
-    }
-    my $execfile = $execdist.$execpath;
-
-    target_cmd_build($ho, 1000, $imagesdir, <<END);
-        ls -al $execfile
-        $rumpbake xen_pv $name $execfile
-END
-}
-
-sub stash () {
-    built_stash($ho, "$jobdir", "rumpbake-images", "rumpimagesdist");
-}
-
-while (@ARGV) {
-    die unless @ARGV>=2;
-    my $name = shift @ARGV;
-    my $rumpexec = shift @ARGV;
-
-    bakeimage($name,$rumpexec);
-}
-
-stash();
diff --git a/ts-rumprun-build b/ts-rumprun-build
deleted file mode 100755
index a09584c8..00000000
--- a/ts-rumprun-build
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/usr/bin/perl
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2014 Citrix Inc.
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-use Osstest::BuildSupport;
-
-tsreadconfig();
-selectbuildhost(\@ARGV);
-builddirsprops();
-
-our %submodmap = qw(buildrump.sh buildrumpsh
-                    src-netbsd netbsdsrc);
-
-our ($rux);
-
-sub checkout () {
-    prepbuilddirs();
-    xendist();
-
-    build_clone($ho, 'rumprun', $builddir, 'rumprun');
-    my $submodules =
-	submodulefixup($ho, 'rumprun', 'rumprun', \%submodmap);
-    $rux = "$builddir/rumprun";
-}
-
-sub massage() {
-}
-
-sub build() {
-    my $debug_build = $r{rumprun_build_debug} || 'y';
-    target_cmd_build($ho, 7200, $rux, ($debug_build ? <<END : ''). <<END);
-        export RUMP_DEV_XEN_DEBUG=1
-END
-        export XEN_HEADERS=$xendist/usr/local/include/xen
-        (./build-rr.sh xen && touch ../build-ok-stamp) |tee ../log
-        test -f ../build-ok-stamp #/
-        echo ok.
-END
-}
-
-my $bindir;
-my $gnutriplet;
-my $ccachedir;
-
-sub findtools() {
-    my $gcc = target_cmd_output($ho, "echo $rux/rumprun/bin/*-gcc");
-    chomp $gcc;
-    die "$gcc ?" unless $gcc =~ m#^(\S+)/([^/ \t]+)-g?cc$#;
-    $bindir = $1;
-    $gnutriplet = $2;
-}
-
-sub setupccache() {
-    $ccachedir = "$bindir.ccache";
-    target_cmd_build($ho, 600, $rux, <<END);
-        mkdir $ccachedir
-        ccache=\$(type -p ccache)
-        for f in $bindir/$gnutriplet-*; do
-            ln -s \$ccache $ccachedir/\${f##*/}
-        done
-END
-}
-
-sub recordtools() {
-    my $prefix = "PATH=$ccachedir:$bindir:\$PATH ";
-    $prefix .= "CROSS_COMPILE=$gnutriplet- HOSTCC=gcc ";
-    store_runvar('cmdprefix_configure', $prefix);
-    store_runvar('cmdprefix_make',      $prefix);
-    store_runvar('cmdsuffix_configure', " --host=$gnutriplet");
-    # "host" is daft GCC/GNU terminology for the target architecture of
-    # a cross-compile, ie in our case the rump environemnt architecture
-    # for which the rump compilers are going to generate code.
-}
-
-sub install() {
-}
-
-checkout();
-massage();
-build();
-findtools();
-setupccache();
-recordtools();
-install();
-built_stash($ho, $builddir, 'rumprun/rumprun/bin', 'rumprundist');
diff --git a/ts-rumprun-demo-build b/ts-rumprun-demo-build
deleted file mode 100755
index 925727a0..00000000
--- a/ts-rumprun-demo-build
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use File::Path;
-use POSIX;
-use Osstest::TestSupport;
-use Osstest::BuildSupport;
-
-tsreadconfig();
-selectbuildhost(\@ARGV);
-
-our $dokconfig = 1;
-
-while (@ARGV && $ARGV[0] =~ m/^-/) {
-    $_ = shift @ARGV;
-    last if m/^--$/;
-    die "$_ ?";
-}
-# remaining arguments are passed as targets to "make"
-
-die unless @ARGV==2;
-my ($demo,$bn) = @ARGV;
-
-builddirsprops();
-
-my $demodir;
-
-sub build () {
-    prepbuilddirs($demo);
-
-    $demodir = "$builddir/$demo";
-
-    target_putfile($ho, 30, "$bn.c", "$demodir/$bn.c");
-
-    my $make_prefix =      $r{cmdprefix_make}      // '';
-
-    target_cmd_build($ho, 300, $demodir, <<END);
-        set -x
-        $make_prefix
-        \${CROSS_COMPILE}gcc -Wall -o $bn $bn.c
-END
-}
-
-sub stash () {
-    built_stash($ho, $builddir, "$demo", "${demo}dist");
-}
-
-build();
-stash();
diff --git a/ts-rumprun-demo-setup b/ts-rumprun-demo-setup
deleted file mode 100755
index f293fd7e..00000000
--- a/ts-rumprun-demo-setup
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-
-tsreadconfig();
-
-our ($whhost,$gn) = @ARGV;
-$whhost ||= 'host';
-$gn ||= 'rump';
-
-our $ho= selecthost($whhost);
-
-our $gho;
-
-our $rkdist;
-
-sub prep () {
-    $gho = prepareguest($ho, $gn, $gn, 4096, undef, 30);
-
-    my $builtimage = guest_var($gho, 'builtimage', undef);
-    my $buildjob = guest_var($gho, 'rumprunbuildjob', undef);
-
-    $builtimage =~ m/\:/ or die "$builtimage ?";
-    my $builtimage_part = $`;
-    my $builtimage_subpath = $'; #';
-
-    $rkdist = target_extract_jobdistpath_subdir
-       ($ho, "rumprun-g-$gn", $builtimage_part, $buildjob);
-    my $imagepath = $rkdist.'/'.$builtimage_subpath;
-
-    store_runvar("${gn}_imagepath", $imagepath);
-    store_runvar("${gn}_toolstack", 'rumprun');
-}
-
-prep();
diff --git a/ts-rumprun-demo-xenstorels b/ts-rumprun-demo-xenstorels
deleted file mode 100755
index cfc6a903..00000000
--- a/ts-rumprun-demo-xenstorels
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2014 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-use Osstest::RumpRun;
-use Data::Dumper;
-
-tsreadconfig();
-
-our ($ho,$gho) = ts_get_host_guest(@ARGV);
-
-our $domid;
-
-our $gn = $gho->{Guest};
-
-sub start () {
-    rumprun_guest_create($gho);
-
-    $domid = guest_find_domid($ho, $gho);
-}
-
-sub await_end () {
-    poll_loop(30,3, "await ending of $gho->{Guest}", sub {
-        my $st= guest_get_state($ho,$gho);
-	return undef if $st =~ m/s/;
-        return "guest state is $st";
-    });
-}
-
-our (%file);
-our (%output);
-
-sub stash ($$) {
-    my ($data, $what) = @_;
-    my $leaf = "xenstore-ls-device--$gn--$what";
-    my $stashh = open_unique_stashfile(\$leaf);
-    print $stashh $data or die $!;
-    close $stashh or die $!;
-    $file{$what} = "$stash/$leaf";
-}
-
-sub some_xenstorels ($$$) {
-    my ($what, $massage, $cmd) = @_;
-    $output{$what} = target_cmd_output_root($ho,$cmd);
-    stash($output{$what}, "$what-raw");
-    $massage->();
-    $output{$what} = join "\n", sort split /\n/, $output{$what};
-    $output{$what} .= "\n";
-    stash($output{$what}, "$what-massaged");
-}
-
-sub our_xenstorels () {
-    some_xenstorels('ours', sub {
-	$output{ours} =~ s{^/local/domain/$domid/}{}gm;
-    }, <<END);
-        xenstore-ls -fp /local/domain/$domid/device
-END
-}
-
-sub their_xenstorels () {
-    some_xenstorels('theirs', sub {
-	$output{theirs} =~ s{\r\n}{\n}g;
-	while ($output{theirs} =~ m{\n=== calling ".*" main\(\) ===\n\n}) {
-	    $output{theirs} = $'; #';
-	}
-	$output{theirs} =~ m{\n=== main\(\) .* returned (\d+) ===\n} or die;
-	$output{theirs} = $`;
-	die "EXIT STATUS $1 ?" if $1 ne '0';
-	$output{theirs} =~ s{^STUB \`\`\w+'' called\n}{}mg;
-	$output{theirs} =~ s{^/dev/xen/xenbus[:[].*\n}{}mg;
-	$output{theirs} =~ s{^xen devsw:.*\n}{}mg;
-    }, <<END);
-        cat /var/log/xen/console/guest-$gn.log
-END
-}
-
-sub check_output () {
-    eval {
-	our_xenstorels();
-	their_xenstorels();
-	1;
-    };
-    if ($@) {
-	die Dumper(\%output)."$@";
-    }
-    if ($output{ours} ne $output{theirs}) {
-	system qw(diff -u), map { $file{"$_-massaged"} } qw(ours theirs);
-	die "$? COMPARISON FAILED";
-    }
-}
-
-start();
-await_end();
-check_output();
-logm("all good.");
diff --git a/ts-rumprun-test-prep b/ts-rumprun-test-prep
deleted file mode 100755
index 67371710..00000000
--- a/ts-rumprun-test-prep
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use POSIX;
-use Osstest::TestSupport;
-use Osstest::Debian;
-
-tsreadconfig();
-
-our ($whhost) = @ARGV;
-$whhost ||= 'host';
-our $ho= selecthost($whhost);
-
-sub packages () {
-    target_install_packages($ho,
-			    qw(binutils));
-}
-
-packages();
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 18/62] Drop rumprun tests
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

These have been failing for some time and it doesn't any more look
like this will be an attractive route to stub device models.  (At
least two Xen downstream projects are using Linux-based stub device
models.)

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v4: Expand commit message.
---
 Osstest/RumpRun.pm                                |  68 -------------
 Osstest/Toolstack/rumprun.pm                      |  33 -------
 allow.all                                         |   1 -
 allow.rumprun                                     |   1 -
 ap-common                                         |   7 --
 ap-fetch-version                                  |   4 -
 ap-fetch-version-old                              |   5 -
 ap-print-url                                      |   3 -
 ap-push                                           |   5 -
 cr-daily-branch                                   |   9 --
 cri-common                                        |   1 -
 crontab                                           |   4 +-
 daily-cron-email-real--rumpuserxen                |   4 -
 daily-cron-email-real-bisectcomplete--rumpuserxen |   4 -
 make-flight                                       |  35 -------
 mfi-common                                        |  37 -------
 sg-run-job                                        |  26 -----
 ts-rumprun-bake                                   |  88 -----------------
 ts-rumprun-build                                  | 103 --------------------
 ts-rumprun-demo-build                             |  67 -------------
 ts-rumprun-demo-setup                             |  54 -----------
 ts-rumprun-demo-xenstorels                        | 113 ----------------------
 ts-rumprun-test-prep                              |  37 -------
 23 files changed, 2 insertions(+), 707 deletions(-)
 delete mode 100644 Osstest/RumpRun.pm
 delete mode 100644 Osstest/Toolstack/rumprun.pm
 delete mode 100644 allow.rumprun
 delete mode 100644 daily-cron-email-real--rumpuserxen
 delete mode 100644 daily-cron-email-real-bisectcomplete--rumpuserxen
 delete mode 100755 ts-rumprun-bake
 delete mode 100755 ts-rumprun-build
 delete mode 100755 ts-rumprun-demo-build
 delete mode 100755 ts-rumprun-demo-setup
 delete mode 100755 ts-rumprun-demo-xenstorels
 delete mode 100755 ts-rumprun-test-prep

diff --git a/Osstest/RumpRun.pm b/Osstest/RumpRun.pm
deleted file mode 100644
index f46d520b..00000000
--- a/Osstest/RumpRun.pm
+++ /dev/null
@@ -1,68 +0,0 @@
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-package Osstest::RumpRun;
-
-use strict;
-use warnings;
-
-use Osstest::TestSupport;
-
-BEGIN {
-    use Exporter ();
-    our ($VERSION, @ISA, @EXPORT, @EXPORT_OK, %EXPORT_TAGS);
-    $VERSION     = 1.00;
-    @ISA         = qw(Exporter);
-    @EXPORT      = qw(
-		      rumprun_guest_create
-		    );
-    %EXPORT_TAGS = ( );
-
-    @EXPORT_OK   = qw();
-}
-
-sub rumprun_guest_create ($) {
-    my ($gho) = @_;
-    my $ho = $gho->{Host};
-    my $gn = $gho->{Guest};
-    guest_prepare_disk($gho);
-
-    my $rumprun = target_var($gho, 'rumprun_path');
-    if (!$rumprun) {
-	logm("finding rumprun to use for $gho->{Name} on $ho->{Name}");
-	my $buildjob = $r{guests_rumprunbuildjob} // # todo: eliminate this
-	    target_var($gho, 'rumprunbuildjob');
-	my $rumprundist = target_extract_jobdistpath_subdir
-	    ($ho, "rumprun-rumprun-g-$gho->{Name}", "rumprun", $buildjob);
-	$rumprun = "$rumprundist/rumprun";
-	store_runvar("${gn}_rumprun_path", $rumprun);
-    }
-
-    my $imagepath = $r{"${gn}_imagepath"};
-    my $cmdline = guest_var($gho, 'cmdline', undef);
-
-    my $cmd = "$rumprun xen";
-    $cmd .= " -N $gn";
-    $cmd .= " -I xenif0,xenif,mac=$gho->{Ether}";
-    $cmd .= " -W xenif0,inet,dhcp";
-    $cmd .= " $imagepath";
-    $cmd .= " $cmdline";
-
-    target_cmd_root($ho, $cmd, 100);
-}
-
-1;
diff --git a/Osstest/Toolstack/rumprun.pm b/Osstest/Toolstack/rumprun.pm
deleted file mode 100644
index 74742c45..00000000
--- a/Osstest/Toolstack/rumprun.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2014 Citrix Inc.
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-package Osstest::Toolstack::rumprun;
-
-use strict;
-use warnings;
-
-use Osstest::RumpRun;
-
-# Defer to xl driver for most things
-use parent qw(Osstest::Toolstack::xl);
-
-sub create ($$) {
-    my ($self,$gho) = @_;
-    rumprun_guest_create($gho);
-}
-
-1;
diff --git a/allow.all b/allow.all
index 5d8d9cb7..894b69ea 100644
--- a/allow.all
+++ b/allow.all
@@ -3,6 +3,5 @@ build-@@                        logs-capture@@
 test-@@-pcipt@@
 test-@@-qemuu-@@		guest-localmigrate
 test-@@-win7-@@			guest-stop
-test-@@-rumprun-@@		rumprun-demo-xenstorels/xenstorels.repeat
 @@-arm64			hosts-allocate
 @@-arm64-@@			hosts-allocate
diff --git a/allow.rumprun b/allow.rumprun
deleted file mode 100644
index 436417b1..00000000
--- a/allow.rumprun
+++ /dev/null
@@ -1 +0,0 @@
-!test-@@-rumprun-@@		rumprun-demo-xenstorels/xenstorels.repeat
diff --git a/ap-common b/ap-common
index 87df7948..6ae7cce6 100644
--- a/ap-common
+++ b/ap-common
@@ -45,12 +45,6 @@
 : ${PUSH_TREE_LIBVIRT:=$XENBITS:/home/xen/git/libvirt.git}
 : ${BASE_TREE_LIBVIRT:=git://xenbits.xen.org/libvirt.git}
 
-: ${TREE_RUMPRUN:=https://github.com/rumpkernel/rumprun}
-# ^ really http://repo.rumpkernel.org/rumprun
-: ${TREEVCS_RUMPRUN:=git}
-: ${BASE_TREE_RUMPRUN:=git://xenbits.xen.org/osstest/rumprun.git}
-: ${PUSH_TREE_RUMPRUN:=$XENBITS:/home/xen/git/osstest/rumprun.git}
-
 : ${TREE_SEABIOS_UPSTREAM:=https://git.seabios.org/seabios.git}
 : ${PUSH_TREE_SEABIOS:=$XENBITS:/home/xen/git/osstest/seabios.git}
 : ${BASE_TREE_SEABIOS:=git://xenbits.xen.org/osstest/seabios.git}
@@ -83,7 +77,6 @@ fi
 : ${LOCALREV_XEN:=daily-cron.$branch}
 : ${LOCALREV_LINUX:=daily-cron.$branch}
 : ${LOCALREV_LIBVIRT:=daily-cron.$branch}
-: ${LOCALREV_RUMPRUN:=daily-cron.$branch}
 : ${LOCALREV_SEABIOS:=daily-cron.$branch}
 : ${LOCALREV_OVMF:=daily-cron.$branch}
 : ${LOCALREV_XTF:=daily-cron.$branch}
diff --git a/ap-fetch-version b/ap-fetch-version
index 87725bf0..9abfbcb5 100755
--- a/ap-fetch-version
+++ b/ap-fetch-version
@@ -90,10 +90,6 @@ libvirt)
 	repo_tree_rev_fetch_git libvirt \
 		$TREE_LIBVIRT master $LOCALREV_LIBVIRT
 	;;
-rumprun)
-	repo_tree_rev_fetch_git rumprun \
-		$TREE_RUMPRUN master $LOCALREV_RUMPRUN
-	;;
 seabios)
 	repo_tree_rev_fetch_git seabios \
 		$TREE_SEABIOS_UPSTREAM master $LOCALREV_SEABIOS
diff --git a/ap-fetch-version-old b/ap-fetch-version-old
index 18213e01..420db9f6 100755
--- a/ap-fetch-version-old
+++ b/ap-fetch-version-old
@@ -30,7 +30,6 @@ check_ap_fetch_placeholders
 : ${BASE_TAG_LINUX2639:=tested/2.6.39.x}
 : ${BASE_LOCALREV_LINUX:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_LIBVIRT:=daily-cron.$branch.old}
-: ${BASE_LOCALREV_RUMPRUN:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_SEABIOS:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_XTF:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_OVMF:=daily-cron.$branch.old}
@@ -99,10 +98,6 @@ libvirt)
 	repo_tree_rev_fetch_git libvirt \
 		$BASE_TREE_LIBVIRT $BASE_TAG_LIBVIRT $BASE_LOCALREV_LIBVIRT
 	;;
-rumprun)
-	repo_tree_rev_fetch_git rumprun \
-		$BASE_TREE_RUMPRUN xen-tested-master $BASE_LOCALREV_RUMPRUN
-	;;
 seabios)
 	repo_tree_rev_fetch_git seabios \
 		$BASE_TREE_SEABIOS xen-tested-master $BASE_LOCALREV_SEABIOS
diff --git a/ap-print-url b/ap-print-url
index e9934bc0..27bdbfae 100755
--- a/ap-print-url
+++ b/ap-print-url
@@ -52,9 +52,6 @@ linuxfirmware)
 libvirt)
 	echo $TREE_LIBVIRT
 	;;
-rumprun)
-	echo $TREE_RUMPRUN
-	;;
 seabios)
 	echo $TREE_SEABIOS_UPSTREAM
 	;;
diff --git a/ap-push b/ap-push
index ded33f63..eb212c05 100755
--- a/ap-push
+++ b/ap-push
@@ -37,7 +37,6 @@ TREE_LINUX=$PUSH_TREE_LINUX
 TREE_QEMU_UPSTREAM=$PUSH_TREE_QEMU_UPSTREAM
 TREE_XEN=$PUSH_TREE_XEN
 TREE_LIBVIRT=$PUSH_TREE_LIBVIRT
-TREE_RUMPRUN=$PUSH_TREE_RUMPRUN
 TREE_SEABIOS=$PUSH_TREE_SEABIOS
 TREE_OVMF=$PUSH_TREE_OVMF
 TREE_XTF=$PUSH_TREE_XTF
@@ -114,10 +113,6 @@ libvirt)
 	cd $repos/libvirt
 	git push $TREE_LIBVIRT $revision:refs/heads/xen-tested-master
 	;;
-rumprun)
-	cd $repos/rumprun
-	git push $TREE_RUMPRUN $revision:refs/heads/xen-tested-master
-	;;
 seabios)
 	cd $repos/seabios
 	git push $TREE_SEABIOS $revision:refs/heads/xen-tested-master
diff --git a/cr-daily-branch b/cr-daily-branch
index 49b8ad8e..5698b083 100755
--- a/cr-daily-branch
+++ b/cr-daily-branch
@@ -223,10 +223,6 @@ if [ "x$REVISION_LIBVIRT" = x ]; then
 	determine_version REVISION_LIBVIRT libvirt LIBVIRT
 	export REVISION_LIBVIRT
 fi
-if [ "x$REVISION_RUMPRUN" = x ]; then
-	determine_version REVISION_RUMPRUN rumprun RUMPRUN
-	export REVISION_RUMPRUN
-fi
 if [ "x$REVISION_XTF" = x ]; then
 	determine_version REVISION_XTF xtf XTF
 	export REVISION_XTF
@@ -278,11 +274,6 @@ libvirt)
 	realtree=libvirt
 	NEW_REVISION=$REVISION_LIBVIRT
 	;;
-rumprun)
-	realtree=rumprun
-	NEW_REVISION=$REVISION_RUMPRUN
-	export REVISION_LIBVIRT=disable
-	;;
 seabios)
 	realtree=seabios
 	NEW_REVISION=$REVISION_SEABIOS
diff --git a/cri-common b/cri-common
index 8d2d26cf..5a425824 100644
--- a/cri-common
+++ b/cri-common
@@ -76,7 +76,6 @@ select_xenbranch () {
 	linux-*)		tree=linux;	xenbranch=xen-unstable ;;
 	linuxfirmware)	    tree=linuxfirmware;	xenbranch=xen-unstable ;;
 	libvirt)		tree=libvirt;	xenbranch=xen-unstable ;;
-	rumprun)	      tree=rumprun; xenbranch=xen-unstable ;;
 	seabios)		tree=seabios;	xenbranch=xen-unstable ;;
 	xtf)			tree=xtf;	xenbranch=xen-unstable ;;
 	ovmf)			tree=ovmf;	xenbranch=xen-unstable ;;
diff --git a/crontab b/crontab
index e1e798a5..8d9b31f1 100755
--- a/crontab
+++ b/crontab
@@ -14,8 +14,8 @@ MAILTO=osstest-admin@xenproject.org
 18		9	* * 1,3,5	cd testing.git && BRANCHES='linux-next freebsd-master' 	./cr-for-branches branches -w "./cr-daily-branch --real"
 18		9	* * 3,7		cd testing.git && BRANCHES=xen-unstable-coverity ./cr-for-branches branches -w "./cr-daily-branch --real"
 34		15	23 * *		cd testing.git && BRANCHES=examine		./cr-for-branches branches -w "./cr-daily-branch --real"
-18		4	* * *		cd testing.git && BRANCHES='linux-3.0 libvirt rumprun' ./cr-for-branches branches -w "./cr-daily-branch --real"
-6-59/15   	*	* * *		cd testing.git && EXTRA_BRANCHES='xen-unstable-smoke linux-3.0 rumprun libvirt freebsd-master' ./cr-for-branches bisects -w "./cr-try-bisect --real"
+18		4	* * *		cd testing.git && BRANCHES='linux-3.0 libvirt' ./cr-for-branches branches -w "./cr-daily-branch --real"
+6-59/15   	*	* * *		cd testing.git && EXTRA_BRANCHES='xen-unstable-smoke linux-3.0 libvirt freebsd-master' ./cr-for-branches bisects -w "./cr-try-bisect --real"
 #8-59/5		*	* * *		cd bisects/adhoc.git &&	with-lock-ex -q data-tree-lock bash -c "./cr-try-bisect-adhoc; exit $?"
 22		8	* * *		cd testing.git && BRANCHES=maintjobs		./cr-for-branches . -w ./cr-all-branch-statuses ''
 3		4	* * *		savelog -c28 testing.git/tmp/cr-for-branches.log >/dev/null
diff --git a/daily-cron-email-real--rumpuserxen b/daily-cron-email-real--rumpuserxen
deleted file mode 100644
index 8f950780..00000000
--- a/daily-cron-email-real--rumpuserxen
+++ /dev/null
@@ -1,4 +0,0 @@
-To: xen-devel@lists.xenproject.org,
-    rumpkernel-builds@freelists.org,
-    osstest-admin@xenproject.org
-Bcc: osstest-output@lists.xenproject.org
diff --git a/daily-cron-email-real-bisectcomplete--rumpuserxen b/daily-cron-email-real-bisectcomplete--rumpuserxen
deleted file mode 100644
index 8f950780..00000000
--- a/daily-cron-email-real-bisectcomplete--rumpuserxen
+++ /dev/null
@@ -1,4 +0,0 @@
-To: xen-devel@lists.xenproject.org,
-    rumpkernel-builds@freelists.org,
-    osstest-admin@xenproject.org
-Bcc: osstest-output@lists.xenproject.org
diff --git a/make-flight b/make-flight
index 2f875125..151b1435 100755
--- a/make-flight
+++ b/make-flight
@@ -85,14 +85,6 @@ job_create_build_filter_callback () {
         *)			return 1 ;;
       esac
     ;;
-    rumprun)
-      case "$job" in
-        build-*-pvops)		;;
-        build-*-rumprun)	;;
-        build-*-*)		return 1 ;;
-        *)			;;
-      esac
-    ;;
   esac
   return 0
 }
@@ -139,15 +131,6 @@ job_create_test_filter_callback () {
     libvirt)
       if [ x$toolstack != xlibvirt ] ; then return 1; fi
       ;;
-    rumprun)
-      case "$job" in
-      *-rumprun-*)
-          ;;
-      *)
-          : "suppressed $job"
-          return 1;;
-      esac
-      ;;
     xtf)
       case "$xenarch:$dom0arch" in
           amd64:amd64) ;;
@@ -211,7 +194,6 @@ arch_branch_filter_callback () {
         qemu-upstream-4.2-testing) return 1;;
         qemu-upstream-4.3-testing) return 1;;
         qemu-upstream-4.4-testing) return 1;;
-        rumprun) return 1;;
         seabios) return 1;;
         ovmf) return 1;;
         esac
@@ -235,21 +217,6 @@ test_matrix_branch_filter_callback () {
   return 0
 }
 
-do_rumpkernel_tests () {
-  branch_wants_rumpkernel_tests || return 0
-
-  rumparch=$dom0arch
-  job_create_test test-$xenarch$kern-$dom0arch-rumprun-$rumparch \
-                      test-rumprun xl \
-            $xenarch $dom0arch                                       \
-            guests_rumprunbuildjob=${bfi}build-$rumparch-rumprun   \
-            nettest_builtimage=rumpimages:nettest \
-            nettest_cmdline=4096 \
-            xenstorels_builtimage=rumpimages:xenstorels              \
-            xenstorels_cmdline='ls -fp device'                       \
-            all_hostflags=$most_hostflags
-}
-
 do_freebsd_tests () {
 
   if [ $xenarch != amd64 -o $dom0arch != i386 -o "$kern" != "" ]; then
@@ -769,8 +736,6 @@ test_matrix_do_one () {
   *)                test_shim=y ;;
   esac
 
-  do_rumpkernel_tests
-
   # xend PV guest test on x86 only
   if [ x$test_xend = xy -a \( $dom0arch = "i386" -o $dom0arch = "amd64" \) ]; then
     job_create_test test-$xenarch$kern-$dom0arch-pv test-debian xend \
diff --git a/mfi-common b/mfi-common
index 83d3c713..f91156fe 100644
--- a/mfi-common
+++ b/mfi-common
@@ -31,16 +31,6 @@ stripy () {
   eval "$out_vn=\"\$out_$out_val\""
 }
 
-branch_wants_rumpkernel_tests () {
-  case "$branch" in
-  osstest*) return 0;;
-  rump*)    return 0;;
-  xen-*)    return 0;;
-  linux*)   return 0;;
-  *)        return 1;;
-  esac
-}
-
 branch_wants_migrupgrade_tests () {
   case "$branch" in
     xen-3.*-testing) return 1 ;;
@@ -445,33 +435,6 @@ create_build_jobs () {
         fi
     fi
 
-    if branch_wants_rumpkernel_tests; then
-
-    case $arch in
-    i386|amd64)
-    job_create_build build-$arch-rumprun build-rumprun               \
-                arch=$arch                                                   \
-        tree_xen=$TREE_XEN                                                   \
-                $RUNVARS $BUILD_RUNVARS $BUILD_RUMPRUN_RUNVARS $arch_runvars \
-                $hostos_runvars                                              \
-                host_hostflags=$build_hostflags                              \
-                buildjob=${bfi}build-$arch                                   \
-                tree_rumprun=$TREE_RUMPRUN			\
-          ${TREEVCS_RUMPRUN:+treevcs_rumprun=}${TREEVCS_RUMPRUN} \
-                revision_rumprun=$REVISION_RUMPRUN		\
-                tree_xen=$TREE_XEN                                           \
-                tree_qemuu=$TREE_QEMU_UPSTREAM                               \
-                revision_xen=$REVISION_XEN                                   \
-                revision_qemuu=$REVISION_QEMU_UPSTREAM                       \
-                tree_rumprun_rumpsrc=$TREE_RUMPRUN_RUMPSRC	\
-                ${TREEVCS_RUMPRUN_RUMPSRC:+treevcs_rumprun_rumpsrc=}${TREEVCS_RUMPRUN_RUMPSRC}
-                # rumpsrc-related runvars needed only for old rumpuser-xen
-                # (ie ones which need $bodges=1 in ts-rumprun-build)
-		;;
-    esac
-
-    fi
-
     case "$arch" in
     arm*) continue;; # don't do any other kernel builds
     esac
diff --git a/sg-run-job b/sg-run-job
index 7d27f415..56b6384a 100755
--- a/sg-run-job
+++ b/sg-run-job
@@ -649,22 +649,6 @@ proc test-guest-nomigr {g} {
     run-ts . =   ts-guest-destroy + host $g
 }
 
-proc need-hosts/test-rumprun {} { return host }
-proc run-job/test-rumprun {} {
-    run-ts . =   ts-rumprun-test-prep       + host
-    set g nettest
-    run-ts . =   ts-rumprun-demo-setup      + host $g
-    run-ts . =   ts-guest-start             + host $g
-    run-ts . =   ts-guest-destroy           + host $g
-    set g xenstorels
-    run-ts . =   ts-rumprun-demo-setup      + host + $g
-    run-ts . =   ts-rumprun-demo-xenstorels + host + $g
-    run-ts . =   ts-guest-destroy-hard      + host + $g
-    repeat-ts 150 =.repeat \
-                 ts-rumprun-demo-xenstorels + host + $g   + \; \
-                 ts-guest-destroy-hard        host   $g   +
-}
-
 if {[file exists sg-run-job-adhoc]} {
     source sg-run-job-adhoc
 }
@@ -712,7 +696,6 @@ proc need-hosts/host-examine-linux {} { examine-host-examine debian }
 proc need-hosts/build {}                { return BUILD_LINUX }
 proc need-hosts/build-kern {}           { return BUILD_LINUX }
 proc need-hosts/build-libvirt {}        { return BUILD_LINUX }
-proc need-hosts/build-rumprun {}        { return BUILD_LINUX }
 proc need-hosts/build-xtf {}            { return BUILD_LINUX }
 proc need-hosts/build-freebsd {}        { return BUILD_FREEBSD }
 proc need-hosts/build-xen-freebsd {}    { return BUILD_FREEBSD }
@@ -729,15 +712,6 @@ proc run-job/build-libvirt {} {
     run-ts . = ts-libvirt-build
 }
 
-proc run-job/build-rumprun {} {
-    run-ts . = ts-rumprun-build
-    run-ts . = ts-rumprun-demo-build + host + nettest rump-test-net
-    run-ts . xen-build ts-xen-build-rump + host --no-kconfig --
-    run-ts . = ts-rumprun-bake + host \
-        nettest :nettest:/rump-test-net \
-        xenstorels ::/usr/local/bin/xenstore-ls
-}
-
 proc run-job/build-xtf {} {
     run-ts . = ts-xtf-build
 }
diff --git a/ts-rumprun-bake b/ts-rumprun-bake
deleted file mode 100755
index fc50db92..00000000
--- a/ts-rumprun-bake
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# ts-rumprun-bake HOST IMAGENAME [JOB]:DIST:SUBPATH [IMAGENAME ... [... ...]]
-#
-# Generates a dist stash `rumpimages' containg files IMAGENAME
-# From the specified files
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-use Osstest::BuildSupport;
-
-tsreadconfig();
-
-our ($whhost,$gn) = @ARGV;
-selectbuildhost(\@ARGV);
-
-
-
-our %images;
-
-our $jobdir = target_jobdir($ho);
-our $imagesdir = $jobdir.'/rumpbake-images';
-our $rumpbake = $jobdir.'/rumprun/rumprun/bin/rumprun-bake';
-
-target_cmd($ho, "mkdir -p $imagesdir");
-
-sub bakeimage ($$) {
-    my ($name,$spec) = @_;
-    
-    $spec =~ m/^(.*?)\:(.*?)\:/ or die "$spec ?";
-    my $buildjob = $1;
-    my $execpart = $2;
-    my $execpath = $';
-
-    logm("baking rump image $name from $spec");
-
-#    my $rumpbake = target_extract_jobdistpath_subdir
-#	($ho, 'rumpbake-base', 'rumprun', $r{guests_rumprunbuildjob});
-#    $rumpbake = "$rumpbake/rumpbake";
-
-    my $execdist;
-    eval {
-	$execdist = target_extract_jobdistpath_subdir
-	    ($ho, "rumpbake-n-$name", $execpart, $buildjob || $job);
-    };
-    if ($@) {
-	logm "*** WARNING: skipping $name: $@";
-	return;
-    }
-    my $execfile = $execdist.$execpath;
-
-    target_cmd_build($ho, 1000, $imagesdir, <<END);
-        ls -al $execfile
-        $rumpbake xen_pv $name $execfile
-END
-}
-
-sub stash () {
-    built_stash($ho, "$jobdir", "rumpbake-images", "rumpimagesdist");
-}
-
-while (@ARGV) {
-    die unless @ARGV>=2;
-    my $name = shift @ARGV;
-    my $rumpexec = shift @ARGV;
-
-    bakeimage($name,$rumpexec);
-}
-
-stash();
diff --git a/ts-rumprun-build b/ts-rumprun-build
deleted file mode 100755
index a09584c8..00000000
--- a/ts-rumprun-build
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/usr/bin/perl
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2014 Citrix Inc.
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-use Osstest::BuildSupport;
-
-tsreadconfig();
-selectbuildhost(\@ARGV);
-builddirsprops();
-
-our %submodmap = qw(buildrump.sh buildrumpsh
-                    src-netbsd netbsdsrc);
-
-our ($rux);
-
-sub checkout () {
-    prepbuilddirs();
-    xendist();
-
-    build_clone($ho, 'rumprun', $builddir, 'rumprun');
-    my $submodules =
-	submodulefixup($ho, 'rumprun', 'rumprun', \%submodmap);
-    $rux = "$builddir/rumprun";
-}
-
-sub massage() {
-}
-
-sub build() {
-    my $debug_build = $r{rumprun_build_debug} || 'y';
-    target_cmd_build($ho, 7200, $rux, ($debug_build ? <<END : ''). <<END);
-        export RUMP_DEV_XEN_DEBUG=1
-END
-        export XEN_HEADERS=$xendist/usr/local/include/xen
-        (./build-rr.sh xen && touch ../build-ok-stamp) |tee ../log
-        test -f ../build-ok-stamp #/
-        echo ok.
-END
-}
-
-my $bindir;
-my $gnutriplet;
-my $ccachedir;
-
-sub findtools() {
-    my $gcc = target_cmd_output($ho, "echo $rux/rumprun/bin/*-gcc");
-    chomp $gcc;
-    die "$gcc ?" unless $gcc =~ m#^(\S+)/([^/ \t]+)-g?cc$#;
-    $bindir = $1;
-    $gnutriplet = $2;
-}
-
-sub setupccache() {
-    $ccachedir = "$bindir.ccache";
-    target_cmd_build($ho, 600, $rux, <<END);
-        mkdir $ccachedir
-        ccache=\$(type -p ccache)
-        for f in $bindir/$gnutriplet-*; do
-            ln -s \$ccache $ccachedir/\${f##*/}
-        done
-END
-}
-
-sub recordtools() {
-    my $prefix = "PATH=$ccachedir:$bindir:\$PATH ";
-    $prefix .= "CROSS_COMPILE=$gnutriplet- HOSTCC=gcc ";
-    store_runvar('cmdprefix_configure', $prefix);
-    store_runvar('cmdprefix_make',      $prefix);
-    store_runvar('cmdsuffix_configure', " --host=$gnutriplet");
-    # "host" is daft GCC/GNU terminology for the target architecture of
-    # a cross-compile, ie in our case the rump environemnt architecture
-    # for which the rump compilers are going to generate code.
-}
-
-sub install() {
-}
-
-checkout();
-massage();
-build();
-findtools();
-setupccache();
-recordtools();
-install();
-built_stash($ho, $builddir, 'rumprun/rumprun/bin', 'rumprundist');
diff --git a/ts-rumprun-demo-build b/ts-rumprun-demo-build
deleted file mode 100755
index 925727a0..00000000
--- a/ts-rumprun-demo-build
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use File::Path;
-use POSIX;
-use Osstest::TestSupport;
-use Osstest::BuildSupport;
-
-tsreadconfig();
-selectbuildhost(\@ARGV);
-
-our $dokconfig = 1;
-
-while (@ARGV && $ARGV[0] =~ m/^-/) {
-    $_ = shift @ARGV;
-    last if m/^--$/;
-    die "$_ ?";
-}
-# remaining arguments are passed as targets to "make"
-
-die unless @ARGV==2;
-my ($demo,$bn) = @ARGV;
-
-builddirsprops();
-
-my $demodir;
-
-sub build () {
-    prepbuilddirs($demo);
-
-    $demodir = "$builddir/$demo";
-
-    target_putfile($ho, 30, "$bn.c", "$demodir/$bn.c");
-
-    my $make_prefix =      $r{cmdprefix_make}      // '';
-
-    target_cmd_build($ho, 300, $demodir, <<END);
-        set -x
-        $make_prefix
-        \${CROSS_COMPILE}gcc -Wall -o $bn $bn.c
-END
-}
-
-sub stash () {
-    built_stash($ho, $builddir, "$demo", "${demo}dist");
-}
-
-build();
-stash();
diff --git a/ts-rumprun-demo-setup b/ts-rumprun-demo-setup
deleted file mode 100755
index f293fd7e..00000000
--- a/ts-rumprun-demo-setup
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-
-tsreadconfig();
-
-our ($whhost,$gn) = @ARGV;
-$whhost ||= 'host';
-$gn ||= 'rump';
-
-our $ho= selecthost($whhost);
-
-our $gho;
-
-our $rkdist;
-
-sub prep () {
-    $gho = prepareguest($ho, $gn, $gn, 4096, undef, 30);
-
-    my $builtimage = guest_var($gho, 'builtimage', undef);
-    my $buildjob = guest_var($gho, 'rumprunbuildjob', undef);
-
-    $builtimage =~ m/\:/ or die "$builtimage ?";
-    my $builtimage_part = $`;
-    my $builtimage_subpath = $'; #';
-
-    $rkdist = target_extract_jobdistpath_subdir
-       ($ho, "rumprun-g-$gn", $builtimage_part, $buildjob);
-    my $imagepath = $rkdist.'/'.$builtimage_subpath;
-
-    store_runvar("${gn}_imagepath", $imagepath);
-    store_runvar("${gn}_toolstack", 'rumprun');
-}
-
-prep();
diff --git a/ts-rumprun-demo-xenstorels b/ts-rumprun-demo-xenstorels
deleted file mode 100755
index cfc6a903..00000000
--- a/ts-rumprun-demo-xenstorels
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2014 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use Osstest::TestSupport;
-use Osstest::RumpRun;
-use Data::Dumper;
-
-tsreadconfig();
-
-our ($ho,$gho) = ts_get_host_guest(@ARGV);
-
-our $domid;
-
-our $gn = $gho->{Guest};
-
-sub start () {
-    rumprun_guest_create($gho);
-
-    $domid = guest_find_domid($ho, $gho);
-}
-
-sub await_end () {
-    poll_loop(30,3, "await ending of $gho->{Guest}", sub {
-        my $st= guest_get_state($ho,$gho);
-	return undef if $st =~ m/s/;
-        return "guest state is $st";
-    });
-}
-
-our (%file);
-our (%output);
-
-sub stash ($$) {
-    my ($data, $what) = @_;
-    my $leaf = "xenstore-ls-device--$gn--$what";
-    my $stashh = open_unique_stashfile(\$leaf);
-    print $stashh $data or die $!;
-    close $stashh or die $!;
-    $file{$what} = "$stash/$leaf";
-}
-
-sub some_xenstorels ($$$) {
-    my ($what, $massage, $cmd) = @_;
-    $output{$what} = target_cmd_output_root($ho,$cmd);
-    stash($output{$what}, "$what-raw");
-    $massage->();
-    $output{$what} = join "\n", sort split /\n/, $output{$what};
-    $output{$what} .= "\n";
-    stash($output{$what}, "$what-massaged");
-}
-
-sub our_xenstorels () {
-    some_xenstorels('ours', sub {
-	$output{ours} =~ s{^/local/domain/$domid/}{}gm;
-    }, <<END);
-        xenstore-ls -fp /local/domain/$domid/device
-END
-}
-
-sub their_xenstorels () {
-    some_xenstorels('theirs', sub {
-	$output{theirs} =~ s{\r\n}{\n}g;
-	while ($output{theirs} =~ m{\n=== calling ".*" main\(\) ===\n\n}) {
-	    $output{theirs} = $'; #';
-	}
-	$output{theirs} =~ m{\n=== main\(\) .* returned (\d+) ===\n} or die;
-	$output{theirs} = $`;
-	die "EXIT STATUS $1 ?" if $1 ne '0';
-	$output{theirs} =~ s{^STUB \`\`\w+'' called\n}{}mg;
-	$output{theirs} =~ s{^/dev/xen/xenbus[:[].*\n}{}mg;
-	$output{theirs} =~ s{^xen devsw:.*\n}{}mg;
-    }, <<END);
-        cat /var/log/xen/console/guest-$gn.log
-END
-}
-
-sub check_output () {
-    eval {
-	our_xenstorels();
-	their_xenstorels();
-	1;
-    };
-    if ($@) {
-	die Dumper(\%output)."$@";
-    }
-    if ($output{ours} ne $output{theirs}) {
-	system qw(diff -u), map { $file{"$_-massaged"} } qw(ours theirs);
-	die "$? COMPARISON FAILED";
-    }
-}
-
-start();
-await_end();
-check_output();
-logm("all good.");
diff --git a/ts-rumprun-test-prep b/ts-rumprun-test-prep
deleted file mode 100755
index 67371710..00000000
--- a/ts-rumprun-test-prep
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/perl -w
-# This is part of "osstest", an automated testing framework for Xen.
-# Copyright (C) 2009-2013 Citrix Inc.
-# 
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-# 
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-use strict qw(vars);
-use DBI;
-BEGIN { unshift @INC, qw(.); }
-use Osstest;
-use POSIX;
-use Osstest::TestSupport;
-use Osstest::Debian;
-
-tsreadconfig();
-
-our ($whhost) = @ARGV;
-$whhost ||= 'host';
-our $ho= selecthost($whhost);
-
-sub packages () {
-    target_install_packages($ho,
-			    qw(binutils));
-}
-
-packages();
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 19/62] Debian: Fix http:// url for bugs.xenproject.org
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 80b4cf37..414cd897 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -239,7 +239,7 @@ END
 	# Dom0 specific kernel options
 	my @xenkopt = @kopt;
 	push @xenkopt, $xenkopt;
-	# http://bugs.xenproject.org/xen/bug/45
+	# https://bugs.xenproject.org/xen/bug/45
 	push @xenkopt, "clk_ignore_unused"
 	    if $ho->{Suite} =~ m/wheezy|jessie|stretch/;
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 19/62] Debian: Fix http:// url for bugs.xenproject.org
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 80b4cf37..414cd897 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -239,7 +239,7 @@ END
 	# Dom0 specific kernel options
 	my @xenkopt = @kopt;
 	push @xenkopt, $xenkopt;
-	# http://bugs.xenproject.org/xen/bug/45
+	# https://bugs.xenproject.org/xen/bug/45
 	push @xenkopt, "clk_ignore_unused"
 	    if $ho->{Suite} =~ m/wheezy|jessie|stretch/;
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 20/62] ts-guests-nbd-mirror: use target_{get, put}file_root to transfter cfg
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The original code used target_cmd_output_root which caused a trailing
new line to be deleted, which caused libvirt converter to fail.

It wasn't discovered until now because we appended too many "\n".

Use target_{get,put}file_root to do the job.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
 ts-guests-nbd-mirror | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/ts-guests-nbd-mirror b/ts-guests-nbd-mirror
index 7ea31f7c..06903aaa 100755
--- a/ts-guests-nbd-mirror
+++ b/ts-guests-nbd-mirror
@@ -154,8 +154,11 @@ sub shuffleconfigs () {
 	my $gn= $gns[$i];
 	my $gho= $ghos[$i];
 	my $cfgpath= $r{ "$gho->{Guest}_cfgpath" };
-	my $cfgdata= target_cmd_output_root($sho,"cat $cfgpath");
-	target_putfilecontents_root_stash($cho,10,$cfgdata,$cfgpath);
+	my $file= $cfgpath;
+	$file=~ s,/,-,g;
+	$file= "$stash/".hostnamepath($cho)."--$file";
+	target_getfile_root($sho, 60, $cfgpath, $file);
+	target_putfile_root($cho, 60, $file, $cfgpath);
     }
 }
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 20/62] ts-guests-nbd-mirror: use target_{get, put}file_root to transfter cfg
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

The original code used target_cmd_output_root which caused a trailing
new line to be deleted, which caused libvirt converter to fail.

It wasn't discovered until now because we appended too many "\n".

Use target_{get,put}file_root to do the job.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
 ts-guests-nbd-mirror | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/ts-guests-nbd-mirror b/ts-guests-nbd-mirror
index 7ea31f7c..06903aaa 100755
--- a/ts-guests-nbd-mirror
+++ b/ts-guests-nbd-mirror
@@ -154,8 +154,11 @@ sub shuffleconfigs () {
 	my $gn= $gns[$i];
 	my $gho= $ghos[$i];
 	my $cfgpath= $r{ "$gho->{Guest}_cfgpath" };
-	my $cfgdata= target_cmd_output_root($sho,"cat $cfgpath");
-	target_putfilecontents_root_stash($cho,10,$cfgdata,$cfgpath);
+	my $file= $cfgpath;
+	$file=~ s,/,-,g;
+	$file= "$stash/".hostnamepath($cho)."--$file";
+	target_getfile_root($sho, 60, $cfgpath, $file);
+	target_putfile_root($cho, 60, $file, $cfgpath);
     }
 }
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel
  Cc: Thierry Reding, Julien Grall, Stefano Stabellini, Wei Liu, dri-devel

From: Wei Liu <wei.liu2@citrix.com>

Empirically, on stretch armhf:

  drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
  drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
     pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
						  ^
etc.

This is blocking the upgrade of the Xen Project CI to Debian stretch
so disable it for now.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
CC: Julien Grall <julien.grall@arm.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Thierry Reding <thierry.reding@gmail.com>
CC: dri-devel@lists.freedesktop.org
---
 ts-kernel-build | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ts-kernel-build b/ts-kernel-build
index 21b8f78a..0bc443de 100755
--- a/ts-kernel-build
+++ b/ts-kernel-build
@@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
     *) ;;
 esac
 
+# Disable components that don't build
+setopt CONFIG_TEGRA_HOST1X n
+
 exit 0
 END
 }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel
  Cc: Thierry Reding, Julien Grall, Stefano Stabellini, Wei Liu, dri-devel

From: Wei Liu <wei.liu2@citrix.com>

Empirically, on stretch armhf:

  drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
  drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
     pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
						  ^
etc.

This is blocking the upgrade of the Xen Project CI to Debian stretch
so disable it for now.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
CC: Julien Grall <julien.grall@arm.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Thierry Reding <thierry.reding@gmail.com>
CC: dri-devel@lists.freedesktop.org
---
 ts-kernel-build | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ts-kernel-build b/ts-kernel-build
index 21b8f78a..0bc443de 100755
--- a/ts-kernel-build
+++ b/ts-kernel-build
@@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
     *) ;;
 esac
 
+# Disable components that don't build
+setopt CONFIG_TEGRA_HOST1X n
+
 exit 0
 END
 }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 22/62] contents_make_cpio: Include symlinks
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to introduce some symlinks into one of our preprepared
overlays.  We must therefore arrange to copy them as appropriate.

The syntax `-type f,l' is an extension in GNU find.  If this causes
trouble in the future we will then have to introduce the obvious
circumlocution involving ( ).

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index d35a784b..1f01ac6a 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1518,7 +1518,7 @@ sub contents_make_cpio ($$$) {
     if (!$child) {
         postfork();
         chdir($srcdir) or die $!;
-        open STDIN, 'find ! -name "*~" ! -name "#*" -type f -print0 |'
+        open STDIN, 'find ! -name "*~" ! -name "#*" -type f,l -print0 |'
             or die $!;
         open STDOUT, '>&', $fh or die $!;
         system "cpio -H$format -o --quiet -0 -R 1000:1000";
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 22/62] contents_make_cpio: Include symlinks
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to introduce some symlinks into one of our preprepared
overlays.  We must therefore arrange to copy them as appropriate.

The syntax `-type f,l' is an extension in GNU find.  If this causes
trouble in the future we will then have to introduce the obvious
circumlocution involving ( ).

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index d35a784b..1f01ac6a 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1518,7 +1518,7 @@ sub contents_make_cpio ($$$) {
     if (!$child) {
         postfork();
         chdir($srcdir) or die $!;
-        open STDIN, 'find ! -name "*~" ! -name "#*" -type f -print0 |'
+        open STDIN, 'find ! -name "*~" ! -name "#*" -type f,l -print0 |'
             or die $!;
         open STDOUT, '>&', $fh or die $!;
         system "cpio -H$format -o --quiet -0 -R 1000:1000";
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 23/62] contents_make_cpio: Make files owned by root
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This function is called to generate overlays for use, mainly, by the
initramfs.

We are going to use it to ship udev rules.  Annoyingly, udev hates
files which aren't owned by root - it simply ignores them.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 1f01ac6a..41f6f5f8 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1521,7 +1521,7 @@ sub contents_make_cpio ($$$) {
         open STDIN, 'find ! -name "*~" ! -name "#*" -type f,l -print0 |'
             or die $!;
         open STDOUT, '>&', $fh or die $!;
-        system "cpio -H$format -o --quiet -0 -R 1000:1000";
+        system "cpio -H$format -o --quiet -0 -R 0:0";
         $? and die $?;
         $!=0; close STDIN; die "$! $?" if $! or $?;
         exit 0;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 23/62] contents_make_cpio: Make files owned by root
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This function is called to generate overlays for use, mainly, by the
initramfs.

We are going to use it to ship udev rules.  Annoyingly, udev hates
files which aren't owned by root - it simply ignores them.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 1f01ac6a..41f6f5f8 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1521,7 +1521,7 @@ sub contents_make_cpio ($$$) {
         open STDIN, 'find ! -name "*~" ! -name "#*" -type f,l -print0 |'
             or die $!;
         open STDOUT, '>&', $fh or die $!;
-        system "cpio -H$format -o --quiet -0 -R 1000:1000";
+        system "cpio -H$format -o --quiet -0 -R 0:0";
         $? and die $?;
         $!=0; close STDIN; die "$! $?" if $! or $?;
         exit 0;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 24/62] overlay-persistent-net: Copy from jessie
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

These were copied from a system running Debian jessie.

The nontrivial files are:
 # Copyright (C) 2006 Marco d'Itri <md@Linux.IT>
 # Copyright (C) 2007 Kay Sievers <kay.sievers@vrfy.org>
and licenced GPLv2+.  That is compatible with osstest's AGPLv3+.

Right now we do nothing with these.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 overlay-persistent-net/etc/init.d/udev-finish      |  22 +++
 .../etc/udev/rule_generator.functions              | 113 +++++++++++++++
 .../etc/udev/rules.d/73-usb-net-by-mac.rules       |   0
 .../etc/udev/rules.d/75-net-description.rules      |   0
 .../udev/rules.d/75-persistent-net-generator.rules | 143 +++++++++++++++++++
 overlay-persistent-net/etc/udev/udev-finish        |   9 ++
 overlay-persistent-net/etc/udev/write_net_rules    | 152 +++++++++++++++++++++
 .../lib/udev/rule_generator.functions              |   1 +
 overlay-persistent-net/lib/udev/udev-finish        |   1 +
 overlay-persistent-net/lib/udev/write_net_rules    |   1 +
 10 files changed, 442 insertions(+)
 create mode 100755 overlay-persistent-net/etc/init.d/udev-finish
 create mode 100644 overlay-persistent-net/etc/udev/rule_generator.functions
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-net-description.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
 create mode 100755 overlay-persistent-net/etc/udev/udev-finish
 create mode 100755 overlay-persistent-net/etc/udev/write_net_rules
 create mode 120000 overlay-persistent-net/lib/udev/rule_generator.functions
 create mode 120000 overlay-persistent-net/lib/udev/udev-finish
 create mode 120000 overlay-persistent-net/lib/udev/write_net_rules

diff --git a/overlay-persistent-net/etc/init.d/udev-finish b/overlay-persistent-net/etc/init.d/udev-finish
new file mode 100755
index 00000000..10602017
--- /dev/null
+++ b/overlay-persistent-net/etc/init.d/udev-finish
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+### BEGIN INIT INFO
+# Provides:          udev-finish
+# Required-Start:    udev $local_fs
+# Required-Stop:     
+# Default-Start:     S
+# Default-Stop:
+# Short-Description: Copy rules generated while the root was ro
+### END INIT INFO
+
+PATH="/sbin:/bin"
+
+. /lib/lsb/init-functions
+
+case "$1" in
+  start) ;;
+  stop|restart|force-reload) exit 0 ;;
+  *) echo "Usage: $0 {start|stop|restart|force-reload}" >&2; exit 1 ;;
+esac
+
+exec /lib/udev/udev-finish
+
diff --git a/overlay-persistent-net/etc/udev/rule_generator.functions b/overlay-persistent-net/etc/udev/rule_generator.functions
new file mode 100644
index 00000000..925193e4
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/rule_generator.functions
@@ -0,0 +1,113 @@
+# functions used by the udev rule generator
+
+# Copyright (C) 2006 Marco d'Itri <md@Linux.IT>
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+PATH='/sbin:/bin'
+
+# Read a single line from file $1 in the $DEVPATH directory.
+# The function must not return an error even if the file does not exist.
+sysread() {
+	local file="$1"
+	[ -e "/sys$DEVPATH/$file" ] || return 0
+	local value
+	read value < "/sys$DEVPATH/$file" || return 0
+	echo "$value"
+}
+
+sysreadlink() {
+	local file="$1"
+	[ -e "/sys$DEVPATH/$file" ] || return 0
+	readlink -f /sys$DEVPATH/$file 2> /dev/null || true
+}
+
+# Return true if a directory is writeable.
+writeable() {
+	if ln -s test-link $1/.is-writeable 2> /dev/null; then
+		rm -f $1/.is-writeable
+		return 0
+	else
+		return 1
+	fi
+}
+
+# Create a lock file for the current rules file.
+lock_rules_file() {
+	RUNDIR=/run/udev
+	[ -e "$RUNDIR" ] || return 0
+
+	RULES_LOCK="$RUNDIR/.lock-${RULES_FILE##*/}"
+
+	retry=30
+	while ! mkdir $RULES_LOCK 2> /dev/null; do
+		if [ $retry -eq 0 ]; then
+			 echo "Cannot lock $RULES_FILE!" >&2
+			 exit 2
+		fi
+		sleep 1
+		retry=$(($retry - 1))
+	done
+}
+
+unlock_rules_file() {
+	[ "$RULES_LOCK" ] || return 0
+	rmdir $RULES_LOCK || true
+}
+
+# Choose the real rules file if it is writeable or a temporary file if not.
+# Both files should be checked later when looking for existing rules.
+choose_rules_file() {
+	RUNDIR=/run/udev
+	local tmp_rules_file="$RUNDIR/tmp-rules--${RULES_FILE##*/}"
+	[ -e "$RULES_FILE" -o -e "$tmp_rules_file" ] || PRINT_HEADER=1
+
+	if writeable ${RULES_FILE%/*}; then
+		RO_RULES_FILE='/dev/null'
+	else
+		RO_RULES_FILE=$RULES_FILE
+		RULES_FILE=$tmp_rules_file
+	fi
+}
+
+# Return the name of the first free device.
+raw_find_next_available() {
+	local links="$1"
+
+	local basename=${links%%[ 0-9]*}
+	local max=-1
+	for name in $links; do
+		local num=${name#$basename}
+		[ "$num" ] || num=0
+		[ $num -gt $max ] && max=$num
+	done
+
+	local max=$(($max + 1))
+	# "name0" actually is just "name"
+	[ $max -eq 0 ] && return
+	echo "$max"
+}
+
+# Find all rules matching a key (with action) and a pattern.
+find_all_rules() {
+	local key="$1"
+	local linkre="$2"
+	local match="$3"
+
+	local search='.*[[:space:],]'"$key"'"('"$linkre"')".*'
+	echo $(sed -n -r -e 's/^#.*//' -e "${match}s/${search}/\1/p" \
+		$RO_RULES_FILE \
+		$([ -e $RULES_FILE ] && echo $RULES_FILE) \
+		2>/dev/null)
+}
diff --git a/overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules b/overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules
new file mode 100644
index 00000000..e69de29b
diff --git a/overlay-persistent-net/etc/udev/rules.d/75-net-description.rules b/overlay-persistent-net/etc/udev/rules.d/75-net-description.rules
new file mode 100644
index 00000000..e69de29b
diff --git a/overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules b/overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
new file mode 100644
index 00000000..13551cfb
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
@@ -0,0 +1,143 @@
+# These rules generate rules to keep network interface names unchanged
+# across reboots and write them to /etc/udev/rules.d/70-persistent-net.rules.
+
+# variables used to communicate:
+#   MATCHADDR		MAC address used for the match
+#   MATCHID		bus_id used for the match
+#   MATCHDRV		driver name used for the match
+#   MATCHIFTYPE		interface type match
+#   COMMENT		comment to add to the generated rule
+#   INTERFACE_NAME	requested name supplied by external tool
+#   INTERFACE_NEW	new interface name returned by rule writer
+
+ACTION!="add",				GOTO="persistent_net_generator_end"
+SUBSYSTEM!="net",			GOTO="persistent_net_generator_end"
+
+# ignore the interface if a name has already been set
+NAME=="?*",				GOTO="persistent_net_generator_end"
+
+# new predictable network interface naming scheme
+# http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
+#IMPORT{cmdline}="net.ifnames"
+#ENV{net.ifnames}=="1",			GOTO="persistent_net_generator_end"
+
+# device name whitelist
+KERNEL!="eth*|ath*|wlan*[0-9]|msh*|ra*|sta*|ctc*|lcs*|hsi*", \
+					GOTO="persistent_net_generator_end"
+
+# ignore Xen virtual interfaces
+SUBSYSTEMS=="xen",			GOTO="persistent_net_generator_end"
+
+# ignore UML virtual interfaces
+DRIVERS=="uml-netdev",			GOTO="persistent_net_generator_end"
+
+# ignore "secondary" raw interfaces of the madwifi driver
+KERNEL=="ath*", ATTRS{type}=="802",	GOTO="persistent_net_generator_end"
+
+# ignore "secondary" monitor interfaces of mac80211 drivers
+KERNEL=="wlan*", ATTRS{type}=="803",	GOTO="persistent_net_generator_end"
+
+# by default match on the MAC address and interface type
+ENV{MATCHADDR}="$attr{address}"
+ENV{MATCHIFTYPE}="$attr{type}"
+
+# match interface dev_id
+ATTR{dev_id}=="?*", ENV{MATCHDEVID}="$attr{dev_id}"
+
+# These vendors are known to violate the local MAC address assignment scheme
+# Interlan, DEC (UNIBUS or QBUS), Apollo, Cisco, Racal-Datacom
+ENV{MATCHADDR}=="02:07:01:*", GOTO="globally_administered_whitelist"
+# 3Com
+ENV{MATCHADDR}=="02:60:60:*", GOTO="globally_administered_whitelist"
+# 3Com IBM PC; Imagen; Valid; Cisco; Apple
+ENV{MATCHADDR}=="02:60:8c:*", GOTO="globally_administered_whitelist"
+# Intel
+ENV{MATCHADDR}=="02:a0:c9:*", GOTO="globally_administered_whitelist"
+# Olivetti
+ENV{MATCHADDR}=="02:aa:3c:*", GOTO="globally_administered_whitelist"
+# CMC Masscomp; Silicon Graphics; Prime EXL
+ENV{MATCHADDR}=="02:cf:1f:*", GOTO="globally_administered_whitelist"
+# Prominet Corporation Gigabit Ethernet Switch
+ENV{MATCHADDR}=="02:e0:3b:*", GOTO="globally_administered_whitelist"
+# BTI (Bus-Tech, Inc.) IBM Mainframes
+ENV{MATCHADDR}=="02:e6:d3:*", GOTO="globally_administered_whitelist"
+# Novell 2000
+ENV{MATCHADDR}=="52:54:4c:*", GOTO="globally_administered_whitelist"
+# Realtec
+ENV{MATCHADDR}=="52:54:ab:*", GOTO="globally_administered_whitelist"
+# Kingston Technologies
+ENV{MATCHADDR}=="e2:0c:0f:*", GOTO="globally_administered_whitelist"
+
+
+# ignore interfaces with locally administered or null MAC addresses
+# and VMWare, Hyper-V, KVM, Virtualbox and Xen virtual interfaces
+ENV{MATCHADDR}=="?[2367abef]:*",	ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:00:00:00:00:00",	ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:0c:29:*|00:50:56:*|00:05:69:*|00:1C:14:*", \
+					ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:15:5d:*",		ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="52:54:00:*|54:52:00:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="08:00:27:*",		ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:16:3e:*",		ENV{MATCHADDR}=""
+
+# ignore Windows Azure Hyper-V virtual interfaces
+ENV{MATCHADDR}=="00:03:ff:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:0d:3a:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:1d:d8:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:12:5a:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:17:fa:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:22:48:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:25:ae:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:50:f2:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="28:18:78:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="50:1a:c5:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="60:45:bd:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="7c:1e:52:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="7c:ed:8d:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="dc:b4:c4:*", ENV{MATCHADDR}=""
+
+# ignore Ravello virtual interfaces
+ENV{MATCHADDR}=="2c:c2:60:*", ENV{MATCHADDR}=""
+
+LABEL="globally_administered_whitelist"
+
+# ibmveth interfaces have stable locally administered MAC addresses
+SUBSYSTEMS=="ibmveth",			ENV{MATCHADDR}="$attr{address}"
+
+# S/390 interfaces are matched only by id
+SUBSYSTEMS=="ccwgroup", \
+	ENV{MATCHDRV}="$driver", ENV{MATCHID}="$id", \
+	ENV{MATCHADDR}="", ENV{MATCHDEVID}=""
+
+# terminate processing if there are not enough conditions to create a rule
+ENV{MATCHADDR}=="", ENV{MATCHID}=="", ENV{INTERFACE_NAME}=="", \
+					GOTO="persistent_net_generator_end"
+
+
+# provide nice comments for the generated rules
+SUBSYSTEMS=="pci", \
+ ENV{COMMENT}="PCI device $attr{vendor}:$attr{device}"
+SUBSYSTEMS=="pcmcia", \
+ ENV{COMMENT}="PCMCIA device $attr{card_id}:$attr{manf_id}"
+SUBSYSTEMS=="usb", \
+ ENV{COMMENT}="USB device 0x$attr{idVendor}:0x$attr{idProduct}"
+SUBSYSTEMS=="ccwgroup", \
+ ENV{COMMENT}="S/390 device at $id"
+SUBSYSTEMS=="ibmveth", \
+ ENV{COMMENT}="LPAR virtual device at $id"
+SUBSYSTEMS=="ieee1394", \
+ ENV{COMMENT}="Firewire device $attr{host_id}"
+ENV{COMMENT}=="", \
+ ENV{COMMENT}="Unknown $env{SUBSYSTEM} device ($env{DEVPATH})"
+ATTRS{driver}=="?*", \
+ ENV{COMMENT}="$env{COMMENT} ($attr{driver})"
+
+# ignore interfaces without a driver link like bridges and VLANs, otherwise
+# generate and write the rule
+DRIVERS=="?*", IMPORT{program}="write_net_rules"
+
+# rename the interface if requested
+ENV{INTERFACE_NEW}=="?*", NAME="$env{INTERFACE_NEW}"
+
+LABEL="persistent_net_generator_end"
+
diff --git a/overlay-persistent-net/etc/udev/udev-finish b/overlay-persistent-net/etc/udev/udev-finish
new file mode 100755
index 00000000..85e3c720
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/udev-finish
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+# Copy any rules generated while the root filesystem was read-only
+for file in /run/udev/tmp-rules--*; do
+  [ -e "$file" ] || continue
+  cat "$file" >> "/etc/udev/rules.d/${file##*tmp-rules--}"
+  rm -f "$file"
+done
+
diff --git a/overlay-persistent-net/etc/udev/write_net_rules b/overlay-persistent-net/etc/udev/write_net_rules
new file mode 100755
index 00000000..fedc0f1e
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/write_net_rules
@@ -0,0 +1,152 @@
+#!/bin/sh -e
+
+# This script is run to create persistent network device naming rules
+# based on properties of the device.
+# If the interface needs to be renamed, INTERFACE_NEW=<name> will be printed
+# on stdout to allow udev to IMPORT it.
+
+# variables used to communicate:
+#   MATCHADDR             MAC address used for the match
+#   MATCHID               bus_id used for the match
+#   MATCHDEVID            dev_id used for the match
+#   MATCHDRV              driver name used for the match
+#   MATCHIFTYPE           interface type match
+#   COMMENT               comment to add to the generated rule
+#   INTERFACE_NAME        requested name supplied by external tool
+#   INTERFACE_NEW         new interface name returned by rule writer
+
+# Copyright (C) 2006 Marco d'Itri <md@Linux.IT>
+# Copyright (C) 2007 Kay Sievers <kay.sievers@vrfy.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# debug, if UDEV_LOG=<debug>
+if [ -n "$UDEV_LOG" ]; then
+	if [ "$UDEV_LOG" -ge 7 ]; then
+		set -x
+	fi
+fi
+
+RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules'
+
+. /lib/udev/rule_generator.functions
+
+interface_name_taken() {
+	local value="$(find_all_rules 'NAME=' $INTERFACE)"
+	if [ "$value" ]; then
+		return 0
+	else
+		return 1
+	fi
+}
+
+find_next_available() {
+	raw_find_next_available "$(find_all_rules 'NAME=' "$1")"
+}
+
+write_rule() {
+	local match="$1"
+	local name="$2"
+	local comment="$3"
+
+	{
+	if [ "$PRINT_HEADER" ]; then
+		PRINT_HEADER=
+		echo "# This file was automatically generated by the $0"
+		echo "# program, run by the persistent-net-generator.rules rules file."
+		echo "#"
+		echo "# You can modify it, as long as you keep each rule on a single"
+		echo "# line, and change only the value of the NAME= key."
+	fi
+
+	echo ""
+	[ "$comment" ] && echo "# $comment"
+	echo "SUBSYSTEM==\"net\", ACTION==\"add\"$match, NAME=\"$name\""
+	} >> $RULES_FILE
+}
+
+if [ -z "$INTERFACE" ]; then
+	echo "missing \$INTERFACE" >&2
+	exit 1
+fi
+
+# Prevent concurrent processes from modifying the file at the same time.
+lock_rules_file
+
+# Check if the rules file is writeable.
+choose_rules_file
+
+# the DRIVERS key is needed to not match bridges and VLAN sub-interfaces
+if [ "$MATCHADDR" ]; then
+	match="$match, DRIVERS==\"?*\", ATTR{address}==\"$MATCHADDR\""
+fi
+
+if [ "$MATCHDRV" ]; then
+	match="$match, DRIVERS==\"$MATCHDRV\""
+fi
+
+if [ "$MATCHDEVID" ]; then
+	match="$match, ATTR{dev_id}==\"$MATCHDEVID\""
+fi
+
+if [ "$MATCHID" ]; then
+	match="$match, KERNELS==\"$MATCHID\""
+fi
+
+if [ "$MATCHIFTYPE" ]; then
+	match="$match, ATTR{type}==\"$MATCHIFTYPE\""
+fi
+
+if [ -z "$match" ]; then
+	echo "missing valid match" >&2
+	unlock_rules_file
+	exit 1
+fi
+
+basename=${INTERFACE%%[0-9]*}
+match="$match, KERNEL==\"$basename*\""
+
+# build a regular expression that matches the new rule that we want to write
+new_rule_pattern=$(echo "^SUBSYSTEM==\"net\", ACTION==\"add\"$match" | sed -re 's/([\?\*\{\}])/\\\1/g')
+
+# Double check if the new rule has already been written. This happens if
+# multiple add events are generated before the script returns and udevd
+# renames the interfaces. See #765577 for details.
+if egrep -qs "$new_rule_pattern" $RO_RULES_FILE $RULES_FILE; then
+	unlock_rules_file
+	exit 0
+fi
+
+if [ "$INTERFACE_NAME" ]; then
+	# external tools may request a custom name
+	COMMENT="$COMMENT (custom name provided by external tool)"
+	if [ "$INTERFACE_NAME" != "$INTERFACE" ]; then
+		INTERFACE=$INTERFACE_NAME;
+		echo "INTERFACE_NEW=$INTERFACE"
+	fi
+else
+	# if a rule using the current name already exists, find a new name
+	if interface_name_taken; then
+		INTERFACE="$basename$(find_next_available "$basename[0-9]*")"
+		# prevent INTERFACE from being "eth" instead of "eth0"
+		[ "$INTERFACE" = "${INTERFACE%%[ \[\]0-9]*}" ] && INTERFACE=${INTERFACE}0
+		echo "INTERFACE_NEW=$INTERFACE"
+	fi
+fi
+
+write_rule "$match" "$INTERFACE" "$COMMENT"
+
+unlock_rules_file
+
+exit 0
diff --git a/overlay-persistent-net/lib/udev/rule_generator.functions b/overlay-persistent-net/lib/udev/rule_generator.functions
new file mode 120000
index 00000000..3b225ebf
--- /dev/null
+++ b/overlay-persistent-net/lib/udev/rule_generator.functions
@@ -0,0 +1 @@
+/etc/udev/rule_generator.functions
\ No newline at end of file
diff --git a/overlay-persistent-net/lib/udev/udev-finish b/overlay-persistent-net/lib/udev/udev-finish
new file mode 120000
index 00000000..2c2e3042
--- /dev/null
+++ b/overlay-persistent-net/lib/udev/udev-finish
@@ -0,0 +1 @@
+/etc/udev/udev-finish
\ No newline at end of file
diff --git a/overlay-persistent-net/lib/udev/write_net_rules b/overlay-persistent-net/lib/udev/write_net_rules
new file mode 120000
index 00000000..bfe37cc3
--- /dev/null
+++ b/overlay-persistent-net/lib/udev/write_net_rules
@@ -0,0 +1 @@
+/etc/udev/write_net_rules
\ No newline at end of file
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 24/62] overlay-persistent-net: Copy from jessie
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

These were copied from a system running Debian jessie.

The nontrivial files are:
 # Copyright (C) 2006 Marco d'Itri <md@Linux.IT>
 # Copyright (C) 2007 Kay Sievers <kay.sievers@vrfy.org>
and licenced GPLv2+.  That is compatible with osstest's AGPLv3+.

Right now we do nothing with these.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 overlay-persistent-net/etc/init.d/udev-finish      |  22 +++
 .../etc/udev/rule_generator.functions              | 113 +++++++++++++++
 .../etc/udev/rules.d/73-usb-net-by-mac.rules       |   0
 .../etc/udev/rules.d/75-net-description.rules      |   0
 .../udev/rules.d/75-persistent-net-generator.rules | 143 +++++++++++++++++++
 overlay-persistent-net/etc/udev/udev-finish        |   9 ++
 overlay-persistent-net/etc/udev/write_net_rules    | 152 +++++++++++++++++++++
 .../lib/udev/rule_generator.functions              |   1 +
 overlay-persistent-net/lib/udev/udev-finish        |   1 +
 overlay-persistent-net/lib/udev/write_net_rules    |   1 +
 10 files changed, 442 insertions(+)
 create mode 100755 overlay-persistent-net/etc/init.d/udev-finish
 create mode 100644 overlay-persistent-net/etc/udev/rule_generator.functions
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-net-description.rules
 create mode 100644 overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
 create mode 100755 overlay-persistent-net/etc/udev/udev-finish
 create mode 100755 overlay-persistent-net/etc/udev/write_net_rules
 create mode 120000 overlay-persistent-net/lib/udev/rule_generator.functions
 create mode 120000 overlay-persistent-net/lib/udev/udev-finish
 create mode 120000 overlay-persistent-net/lib/udev/write_net_rules

diff --git a/overlay-persistent-net/etc/init.d/udev-finish b/overlay-persistent-net/etc/init.d/udev-finish
new file mode 100755
index 00000000..10602017
--- /dev/null
+++ b/overlay-persistent-net/etc/init.d/udev-finish
@@ -0,0 +1,22 @@
+#!/bin/sh -e
+### BEGIN INIT INFO
+# Provides:          udev-finish
+# Required-Start:    udev $local_fs
+# Required-Stop:     
+# Default-Start:     S
+# Default-Stop:
+# Short-Description: Copy rules generated while the root was ro
+### END INIT INFO
+
+PATH="/sbin:/bin"
+
+. /lib/lsb/init-functions
+
+case "$1" in
+  start) ;;
+  stop|restart|force-reload) exit 0 ;;
+  *) echo "Usage: $0 {start|stop|restart|force-reload}" >&2; exit 1 ;;
+esac
+
+exec /lib/udev/udev-finish
+
diff --git a/overlay-persistent-net/etc/udev/rule_generator.functions b/overlay-persistent-net/etc/udev/rule_generator.functions
new file mode 100644
index 00000000..925193e4
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/rule_generator.functions
@@ -0,0 +1,113 @@
+# functions used by the udev rule generator
+
+# Copyright (C) 2006 Marco d'Itri <md@Linux.IT>
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+PATH='/sbin:/bin'
+
+# Read a single line from file $1 in the $DEVPATH directory.
+# The function must not return an error even if the file does not exist.
+sysread() {
+	local file="$1"
+	[ -e "/sys$DEVPATH/$file" ] || return 0
+	local value
+	read value < "/sys$DEVPATH/$file" || return 0
+	echo "$value"
+}
+
+sysreadlink() {
+	local file="$1"
+	[ -e "/sys$DEVPATH/$file" ] || return 0
+	readlink -f /sys$DEVPATH/$file 2> /dev/null || true
+}
+
+# Return true if a directory is writeable.
+writeable() {
+	if ln -s test-link $1/.is-writeable 2> /dev/null; then
+		rm -f $1/.is-writeable
+		return 0
+	else
+		return 1
+	fi
+}
+
+# Create a lock file for the current rules file.
+lock_rules_file() {
+	RUNDIR=/run/udev
+	[ -e "$RUNDIR" ] || return 0
+
+	RULES_LOCK="$RUNDIR/.lock-${RULES_FILE##*/}"
+
+	retry=30
+	while ! mkdir $RULES_LOCK 2> /dev/null; do
+		if [ $retry -eq 0 ]; then
+			 echo "Cannot lock $RULES_FILE!" >&2
+			 exit 2
+		fi
+		sleep 1
+		retry=$(($retry - 1))
+	done
+}
+
+unlock_rules_file() {
+	[ "$RULES_LOCK" ] || return 0
+	rmdir $RULES_LOCK || true
+}
+
+# Choose the real rules file if it is writeable or a temporary file if not.
+# Both files should be checked later when looking for existing rules.
+choose_rules_file() {
+	RUNDIR=/run/udev
+	local tmp_rules_file="$RUNDIR/tmp-rules--${RULES_FILE##*/}"
+	[ -e "$RULES_FILE" -o -e "$tmp_rules_file" ] || PRINT_HEADER=1
+
+	if writeable ${RULES_FILE%/*}; then
+		RO_RULES_FILE='/dev/null'
+	else
+		RO_RULES_FILE=$RULES_FILE
+		RULES_FILE=$tmp_rules_file
+	fi
+}
+
+# Return the name of the first free device.
+raw_find_next_available() {
+	local links="$1"
+
+	local basename=${links%%[ 0-9]*}
+	local max=-1
+	for name in $links; do
+		local num=${name#$basename}
+		[ "$num" ] || num=0
+		[ $num -gt $max ] && max=$num
+	done
+
+	local max=$(($max + 1))
+	# "name0" actually is just "name"
+	[ $max -eq 0 ] && return
+	echo "$max"
+}
+
+# Find all rules matching a key (with action) and a pattern.
+find_all_rules() {
+	local key="$1"
+	local linkre="$2"
+	local match="$3"
+
+	local search='.*[[:space:],]'"$key"'"('"$linkre"')".*'
+	echo $(sed -n -r -e 's/^#.*//' -e "${match}s/${search}/\1/p" \
+		$RO_RULES_FILE \
+		$([ -e $RULES_FILE ] && echo $RULES_FILE) \
+		2>/dev/null)
+}
diff --git a/overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules b/overlay-persistent-net/etc/udev/rules.d/73-usb-net-by-mac.rules
new file mode 100644
index 00000000..e69de29b
diff --git a/overlay-persistent-net/etc/udev/rules.d/75-net-description.rules b/overlay-persistent-net/etc/udev/rules.d/75-net-description.rules
new file mode 100644
index 00000000..e69de29b
diff --git a/overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules b/overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
new file mode 100644
index 00000000..13551cfb
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/rules.d/75-persistent-net-generator.rules
@@ -0,0 +1,143 @@
+# These rules generate rules to keep network interface names unchanged
+# across reboots and write them to /etc/udev/rules.d/70-persistent-net.rules.
+
+# variables used to communicate:
+#   MATCHADDR		MAC address used for the match
+#   MATCHID		bus_id used for the match
+#   MATCHDRV		driver name used for the match
+#   MATCHIFTYPE		interface type match
+#   COMMENT		comment to add to the generated rule
+#   INTERFACE_NAME	requested name supplied by external tool
+#   INTERFACE_NEW	new interface name returned by rule writer
+
+ACTION!="add",				GOTO="persistent_net_generator_end"
+SUBSYSTEM!="net",			GOTO="persistent_net_generator_end"
+
+# ignore the interface if a name has already been set
+NAME=="?*",				GOTO="persistent_net_generator_end"
+
+# new predictable network interface naming scheme
+# http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
+#IMPORT{cmdline}="net.ifnames"
+#ENV{net.ifnames}=="1",			GOTO="persistent_net_generator_end"
+
+# device name whitelist
+KERNEL!="eth*|ath*|wlan*[0-9]|msh*|ra*|sta*|ctc*|lcs*|hsi*", \
+					GOTO="persistent_net_generator_end"
+
+# ignore Xen virtual interfaces
+SUBSYSTEMS=="xen",			GOTO="persistent_net_generator_end"
+
+# ignore UML virtual interfaces
+DRIVERS=="uml-netdev",			GOTO="persistent_net_generator_end"
+
+# ignore "secondary" raw interfaces of the madwifi driver
+KERNEL=="ath*", ATTRS{type}=="802",	GOTO="persistent_net_generator_end"
+
+# ignore "secondary" monitor interfaces of mac80211 drivers
+KERNEL=="wlan*", ATTRS{type}=="803",	GOTO="persistent_net_generator_end"
+
+# by default match on the MAC address and interface type
+ENV{MATCHADDR}="$attr{address}"
+ENV{MATCHIFTYPE}="$attr{type}"
+
+# match interface dev_id
+ATTR{dev_id}=="?*", ENV{MATCHDEVID}="$attr{dev_id}"
+
+# These vendors are known to violate the local MAC address assignment scheme
+# Interlan, DEC (UNIBUS or QBUS), Apollo, Cisco, Racal-Datacom
+ENV{MATCHADDR}=="02:07:01:*", GOTO="globally_administered_whitelist"
+# 3Com
+ENV{MATCHADDR}=="02:60:60:*", GOTO="globally_administered_whitelist"
+# 3Com IBM PC; Imagen; Valid; Cisco; Apple
+ENV{MATCHADDR}=="02:60:8c:*", GOTO="globally_administered_whitelist"
+# Intel
+ENV{MATCHADDR}=="02:a0:c9:*", GOTO="globally_administered_whitelist"
+# Olivetti
+ENV{MATCHADDR}=="02:aa:3c:*", GOTO="globally_administered_whitelist"
+# CMC Masscomp; Silicon Graphics; Prime EXL
+ENV{MATCHADDR}=="02:cf:1f:*", GOTO="globally_administered_whitelist"
+# Prominet Corporation Gigabit Ethernet Switch
+ENV{MATCHADDR}=="02:e0:3b:*", GOTO="globally_administered_whitelist"
+# BTI (Bus-Tech, Inc.) IBM Mainframes
+ENV{MATCHADDR}=="02:e6:d3:*", GOTO="globally_administered_whitelist"
+# Novell 2000
+ENV{MATCHADDR}=="52:54:4c:*", GOTO="globally_administered_whitelist"
+# Realtec
+ENV{MATCHADDR}=="52:54:ab:*", GOTO="globally_administered_whitelist"
+# Kingston Technologies
+ENV{MATCHADDR}=="e2:0c:0f:*", GOTO="globally_administered_whitelist"
+
+
+# ignore interfaces with locally administered or null MAC addresses
+# and VMWare, Hyper-V, KVM, Virtualbox and Xen virtual interfaces
+ENV{MATCHADDR}=="?[2367abef]:*",	ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:00:00:00:00:00",	ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:0c:29:*|00:50:56:*|00:05:69:*|00:1C:14:*", \
+					ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:15:5d:*",		ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="52:54:00:*|54:52:00:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="08:00:27:*",		ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:16:3e:*",		ENV{MATCHADDR}=""
+
+# ignore Windows Azure Hyper-V virtual interfaces
+ENV{MATCHADDR}=="00:03:ff:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:0d:3a:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:1d:d8:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:12:5a:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:17:fa:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:22:48:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:25:ae:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="00:50:f2:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="28:18:78:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="50:1a:c5:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="60:45:bd:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="7c:1e:52:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="7c:ed:8d:*", ENV{MATCHADDR}=""
+ENV{MATCHADDR}=="dc:b4:c4:*", ENV{MATCHADDR}=""
+
+# ignore Ravello virtual interfaces
+ENV{MATCHADDR}=="2c:c2:60:*", ENV{MATCHADDR}=""
+
+LABEL="globally_administered_whitelist"
+
+# ibmveth interfaces have stable locally administered MAC addresses
+SUBSYSTEMS=="ibmveth",			ENV{MATCHADDR}="$attr{address}"
+
+# S/390 interfaces are matched only by id
+SUBSYSTEMS=="ccwgroup", \
+	ENV{MATCHDRV}="$driver", ENV{MATCHID}="$id", \
+	ENV{MATCHADDR}="", ENV{MATCHDEVID}=""
+
+# terminate processing if there are not enough conditions to create a rule
+ENV{MATCHADDR}=="", ENV{MATCHID}=="", ENV{INTERFACE_NAME}=="", \
+					GOTO="persistent_net_generator_end"
+
+
+# provide nice comments for the generated rules
+SUBSYSTEMS=="pci", \
+ ENV{COMMENT}="PCI device $attr{vendor}:$attr{device}"
+SUBSYSTEMS=="pcmcia", \
+ ENV{COMMENT}="PCMCIA device $attr{card_id}:$attr{manf_id}"
+SUBSYSTEMS=="usb", \
+ ENV{COMMENT}="USB device 0x$attr{idVendor}:0x$attr{idProduct}"
+SUBSYSTEMS=="ccwgroup", \
+ ENV{COMMENT}="S/390 device at $id"
+SUBSYSTEMS=="ibmveth", \
+ ENV{COMMENT}="LPAR virtual device at $id"
+SUBSYSTEMS=="ieee1394", \
+ ENV{COMMENT}="Firewire device $attr{host_id}"
+ENV{COMMENT}=="", \
+ ENV{COMMENT}="Unknown $env{SUBSYSTEM} device ($env{DEVPATH})"
+ATTRS{driver}=="?*", \
+ ENV{COMMENT}="$env{COMMENT} ($attr{driver})"
+
+# ignore interfaces without a driver link like bridges and VLANs, otherwise
+# generate and write the rule
+DRIVERS=="?*", IMPORT{program}="write_net_rules"
+
+# rename the interface if requested
+ENV{INTERFACE_NEW}=="?*", NAME="$env{INTERFACE_NEW}"
+
+LABEL="persistent_net_generator_end"
+
diff --git a/overlay-persistent-net/etc/udev/udev-finish b/overlay-persistent-net/etc/udev/udev-finish
new file mode 100755
index 00000000..85e3c720
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/udev-finish
@@ -0,0 +1,9 @@
+#!/bin/sh -e
+
+# Copy any rules generated while the root filesystem was read-only
+for file in /run/udev/tmp-rules--*; do
+  [ -e "$file" ] || continue
+  cat "$file" >> "/etc/udev/rules.d/${file##*tmp-rules--}"
+  rm -f "$file"
+done
+
diff --git a/overlay-persistent-net/etc/udev/write_net_rules b/overlay-persistent-net/etc/udev/write_net_rules
new file mode 100755
index 00000000..fedc0f1e
--- /dev/null
+++ b/overlay-persistent-net/etc/udev/write_net_rules
@@ -0,0 +1,152 @@
+#!/bin/sh -e
+
+# This script is run to create persistent network device naming rules
+# based on properties of the device.
+# If the interface needs to be renamed, INTERFACE_NEW=<name> will be printed
+# on stdout to allow udev to IMPORT it.
+
+# variables used to communicate:
+#   MATCHADDR             MAC address used for the match
+#   MATCHID               bus_id used for the match
+#   MATCHDEVID            dev_id used for the match
+#   MATCHDRV              driver name used for the match
+#   MATCHIFTYPE           interface type match
+#   COMMENT               comment to add to the generated rule
+#   INTERFACE_NAME        requested name supplied by external tool
+#   INTERFACE_NEW         new interface name returned by rule writer
+
+# Copyright (C) 2006 Marco d'Itri <md@Linux.IT>
+# Copyright (C) 2007 Kay Sievers <kay.sievers@vrfy.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# debug, if UDEV_LOG=<debug>
+if [ -n "$UDEV_LOG" ]; then
+	if [ "$UDEV_LOG" -ge 7 ]; then
+		set -x
+	fi
+fi
+
+RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules'
+
+. /lib/udev/rule_generator.functions
+
+interface_name_taken() {
+	local value="$(find_all_rules 'NAME=' $INTERFACE)"
+	if [ "$value" ]; then
+		return 0
+	else
+		return 1
+	fi
+}
+
+find_next_available() {
+	raw_find_next_available "$(find_all_rules 'NAME=' "$1")"
+}
+
+write_rule() {
+	local match="$1"
+	local name="$2"
+	local comment="$3"
+
+	{
+	if [ "$PRINT_HEADER" ]; then
+		PRINT_HEADER=
+		echo "# This file was automatically generated by the $0"
+		echo "# program, run by the persistent-net-generator.rules rules file."
+		echo "#"
+		echo "# You can modify it, as long as you keep each rule on a single"
+		echo "# line, and change only the value of the NAME= key."
+	fi
+
+	echo ""
+	[ "$comment" ] && echo "# $comment"
+	echo "SUBSYSTEM==\"net\", ACTION==\"add\"$match, NAME=\"$name\""
+	} >> $RULES_FILE
+}
+
+if [ -z "$INTERFACE" ]; then
+	echo "missing \$INTERFACE" >&2
+	exit 1
+fi
+
+# Prevent concurrent processes from modifying the file at the same time.
+lock_rules_file
+
+# Check if the rules file is writeable.
+choose_rules_file
+
+# the DRIVERS key is needed to not match bridges and VLAN sub-interfaces
+if [ "$MATCHADDR" ]; then
+	match="$match, DRIVERS==\"?*\", ATTR{address}==\"$MATCHADDR\""
+fi
+
+if [ "$MATCHDRV" ]; then
+	match="$match, DRIVERS==\"$MATCHDRV\""
+fi
+
+if [ "$MATCHDEVID" ]; then
+	match="$match, ATTR{dev_id}==\"$MATCHDEVID\""
+fi
+
+if [ "$MATCHID" ]; then
+	match="$match, KERNELS==\"$MATCHID\""
+fi
+
+if [ "$MATCHIFTYPE" ]; then
+	match="$match, ATTR{type}==\"$MATCHIFTYPE\""
+fi
+
+if [ -z "$match" ]; then
+	echo "missing valid match" >&2
+	unlock_rules_file
+	exit 1
+fi
+
+basename=${INTERFACE%%[0-9]*}
+match="$match, KERNEL==\"$basename*\""
+
+# build a regular expression that matches the new rule that we want to write
+new_rule_pattern=$(echo "^SUBSYSTEM==\"net\", ACTION==\"add\"$match" | sed -re 's/([\?\*\{\}])/\\\1/g')
+
+# Double check if the new rule has already been written. This happens if
+# multiple add events are generated before the script returns and udevd
+# renames the interfaces. See #765577 for details.
+if egrep -qs "$new_rule_pattern" $RO_RULES_FILE $RULES_FILE; then
+	unlock_rules_file
+	exit 0
+fi
+
+if [ "$INTERFACE_NAME" ]; then
+	# external tools may request a custom name
+	COMMENT="$COMMENT (custom name provided by external tool)"
+	if [ "$INTERFACE_NAME" != "$INTERFACE" ]; then
+		INTERFACE=$INTERFACE_NAME;
+		echo "INTERFACE_NEW=$INTERFACE"
+	fi
+else
+	# if a rule using the current name already exists, find a new name
+	if interface_name_taken; then
+		INTERFACE="$basename$(find_next_available "$basename[0-9]*")"
+		# prevent INTERFACE from being "eth" instead of "eth0"
+		[ "$INTERFACE" = "${INTERFACE%%[ \[\]0-9]*}" ] && INTERFACE=${INTERFACE}0
+		echo "INTERFACE_NEW=$INTERFACE"
+	fi
+fi
+
+write_rule "$match" "$INTERFACE" "$COMMENT"
+
+unlock_rules_file
+
+exit 0
diff --git a/overlay-persistent-net/lib/udev/rule_generator.functions b/overlay-persistent-net/lib/udev/rule_generator.functions
new file mode 120000
index 00000000..3b225ebf
--- /dev/null
+++ b/overlay-persistent-net/lib/udev/rule_generator.functions
@@ -0,0 +1 @@
+/etc/udev/rule_generator.functions
\ No newline at end of file
diff --git a/overlay-persistent-net/lib/udev/udev-finish b/overlay-persistent-net/lib/udev/udev-finish
new file mode 120000
index 00000000..2c2e3042
--- /dev/null
+++ b/overlay-persistent-net/lib/udev/udev-finish
@@ -0,0 +1 @@
+/etc/udev/udev-finish
\ No newline at end of file
diff --git a/overlay-persistent-net/lib/udev/write_net_rules b/overlay-persistent-net/lib/udev/write_net_rules
new file mode 120000
index 00000000..bfe37cc3
--- /dev/null
+++ b/overlay-persistent-net/lib/udev/write_net_rules
@@ -0,0 +1 @@
+/etc/udev/write_net_rules
\ No newline at end of file
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 25/62] persistent-net: Add overlay on installed systems >= stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This prepares the ground for turning off net.ifnames.  The actual
rules are gated on net.ifnames so right now there is no change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 414cd897..e246c012 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -798,6 +798,13 @@ sub debian_overlays ($$) {
     };
     my $suite = $ho->{Suite};
     $maybe->('overlay');
+
+    # In stretch and later, net.ifnames=1, the fdo-style `predictable
+    # network device names', is the default; but it is anything but
+    # predictable, so we disable it.  Instead, we restore the
+    # 75-persistent-net-generator mechanism from jessie and earlier.
+    $maybe->("overlay-persistent-net") if $ho->{Suite} !~ m/wheezy|jessie/;
+
     $maybe->("overlay-$suite");
     $maybe->($c{OverlayLocal}, 'overlay-local.tar');
     $maybe->("$c{OverlayLocal}-$suite", 'overlay-local-$suite.tar');
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 25/62] persistent-net: Add overlay on installed systems >= stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This prepares the ground for turning off net.ifnames.  The actual
rules are gated on net.ifnames so right now there is no change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 414cd897..e246c012 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -798,6 +798,13 @@ sub debian_overlays ($$) {
     };
     my $suite = $ho->{Suite};
     $maybe->('overlay');
+
+    # In stretch and later, net.ifnames=1, the fdo-style `predictable
+    # network device names', is the default; but it is anything but
+    # predictable, so we disable it.  Instead, we restore the
+    # 75-persistent-net-generator mechanism from jessie and earlier.
+    $maybe->("overlay-persistent-net") if $ho->{Suite} !~ m/wheezy|jessie/;
+
     $maybe->("overlay-$suite");
     $maybe->($c{OverlayLocal}, 'overlay-local.tar');
     $maybe->("$c{OverlayLocal}-$suite", 'overlay-local-$suite.tar');
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 26/62] persistent-net: Add overlay in installer >= stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to need this in the installer so that the interface names
from the installer environment are captured so that they can be the
same on the host.

This prepares the ground for turning off net.ifnames.  The actual
rules are gated on net.ifnames so right now there is no change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/ts-host-install b/ts-host-install
index 9ab3de62..8ea81e24 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -188,6 +188,13 @@ sub setup_netboot_firstboot($) {
     system qw(rm -rf --),"$initrd_overlay.d";
     mkdir "$initrd_overlay.d" or die "$initrd_overlay.d: $!";
 
+    if ($ho->{Suite} !~ m/wheezy|jessie/) {
+	my @cmd = (qw(cp -dR overlay-persistent-net/.),
+		   "$initrd_overlay.d/.");
+	logm("using persistent-net-generator: @cmd");
+	system_checked @cmd;
+    }
+
     my $ipappend = 2;
     my $wantphysif= get_host_property($ho,'interface force','auto');
     logm("Forcing interface $wantphysif");
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 26/62] persistent-net: Add overlay in installer >= stretch
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to need this in the installer so that the interface names
from the installer environment are captured so that they can be the
same on the host.

This prepares the ground for turning off net.ifnames.  The actual
rules are gated on net.ifnames so right now there is no change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/ts-host-install b/ts-host-install
index 9ab3de62..8ea81e24 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -188,6 +188,13 @@ sub setup_netboot_firstboot($) {
     system qw(rm -rf --),"$initrd_overlay.d";
     mkdir "$initrd_overlay.d" or die "$initrd_overlay.d: $!";
 
+    if ($ho->{Suite} !~ m/wheezy|jessie/) {
+	my @cmd = (qw(cp -dR overlay-persistent-net/.),
+		   "$initrd_overlay.d/.");
+	logm("using persistent-net-generator: @cmd");
+	system_checked @cmd;
+    }
+
     my $ipappend = 2;
     my $wantphysif= get_host_property($ho,'interface force','auto');
     logm("Forcing interface $wantphysif");
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 27/62] ts-host-install: Break out $persistent_net_rules
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We're going to want to reuse this value.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/ts-host-install b/ts-host-install
index 8ea81e24..f80a151c 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -195,6 +195,9 @@ sub setup_netboot_firstboot($) {
 	system_checked @cmd;
     }
 
+    my $persistent_net_rules =
+	"$initrd_overlay.d/etc/udev/rules.d/70-persistent-net.rules";
+
     my $ipappend = 2;
     my $wantphysif= get_host_property($ho,'interface force','auto');
     logm("Forcing interface $wantphysif");
@@ -206,7 +209,7 @@ sub setup_netboot_firstboot($) {
 	# ip(8) moved to /sbin in Jessie
 	my $ipcmd = $ho->{Suite} =~ m/wheezy/ ? "/bin/ip" : "/sbin/ip";
         file_simple_write_contents
-            ("$initrd_overlay.d/etc/udev/rules.d/70-persistent-net.rules",
+            ($persistent_net_rules,
              $ho->{Flags}{'force-mac-address'} ? <<END : <<END);
 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNEL=="$wantphysif", RUN += "$ipcmd link set $wantphysif address $ho->{Ether}"
 END
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 27/62] ts-host-install: Break out $persistent_net_rules
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We're going to want to reuse this value.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/ts-host-install b/ts-host-install
index 8ea81e24..f80a151c 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -195,6 +195,9 @@ sub setup_netboot_firstboot($) {
 	system_checked @cmd;
     }
 
+    my $persistent_net_rules =
+	"$initrd_overlay.d/etc/udev/rules.d/70-persistent-net.rules";
+
     my $ipappend = 2;
     my $wantphysif= get_host_property($ho,'interface force','auto');
     logm("Forcing interface $wantphysif");
@@ -206,7 +209,7 @@ sub setup_netboot_firstboot($) {
 	# ip(8) moved to /sbin in Jessie
 	my $ipcmd = $ho->{Suite} =~ m/wheezy/ ? "/bin/ip" : "/sbin/ip";
         file_simple_write_contents
-            ("$initrd_overlay.d/etc/udev/rules.d/70-persistent-net.rules",
+            ($persistent_net_rules,
              $ho->{Flags}{'force-mac-address'} ? <<END : <<END);
 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNEL=="$wantphysif", RUN += "$ipcmd link set $wantphysif address $ho->{Ether}"
 END
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 28/62] ts-host-install: Unconditionally mkdir -p /etc/udev/rules.d
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to want this directory to exist so that we can put a
canary in 70-persistent-net.rules.

In the cases where the behaviour of osstest changes, the empty
directory does not result in any overall change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/ts-host-install b/ts-host-install
index f80a151c..7423eb9b 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -198,6 +198,8 @@ sub setup_netboot_firstboot($) {
     my $persistent_net_rules =
 	"$initrd_overlay.d/etc/udev/rules.d/70-persistent-net.rules";
 
+    system_checked(qw(mkdir -p --), "$initrd_overlay.d/etc/udev/rules.d");
+
     my $ipappend = 2;
     my $wantphysif= get_host_property($ho,'interface force','auto');
     logm("Forcing interface $wantphysif");
@@ -205,7 +207,6 @@ sub setup_netboot_firstboot($) {
 	$ipappend = 0;
 	die "need Ether for $ho->{Name} ($wantphysif)"
 	    unless defined $ho->{Ether};
-        system_checked(qw(mkdir -p --), "$initrd_overlay.d/etc/udev/rules.d");
 	# ip(8) moved to /sbin in Jessie
 	my $ipcmd = $ho->{Suite} =~ m/wheezy/ ? "/bin/ip" : "/sbin/ip";
         file_simple_write_contents
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 28/62] ts-host-install: Unconditionally mkdir -p /etc/udev/rules.d
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to want this directory to exist so that we can put a
canary in 70-persistent-net.rules.

In the cases where the behaviour of osstest changes, the empty
directory does not result in any overall change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/ts-host-install b/ts-host-install
index f80a151c..7423eb9b 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -198,6 +198,8 @@ sub setup_netboot_firstboot($) {
     my $persistent_net_rules =
 	"$initrd_overlay.d/etc/udev/rules.d/70-persistent-net.rules";
 
+    system_checked(qw(mkdir -p --), "$initrd_overlay.d/etc/udev/rules.d");
+
     my $ipappend = 2;
     my $wantphysif= get_host_property($ho,'interface force','auto');
     logm("Forcing interface $wantphysif");
@@ -205,7 +207,6 @@ sub setup_netboot_firstboot($) {
 	$ipappend = 0;
 	die "need Ether for $ho->{Name} ($wantphysif)"
 	    unless defined $ho->{Ether};
-        system_checked(qw(mkdir -p --), "$initrd_overlay.d/etc/udev/rules.d");
 	# ip(8) moved to /sbin in Jessie
 	my $ipcmd = $ho->{Suite} =~ m/wheezy/ ? "/bin/ip" : "/sbin/ip";
         file_simple_write_contents
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 29/62] ts-host-install: Put canary in 70-persistent-net.rules
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This will allow us to see if the initramfs's network names are being
properly copied to the installed system.  Ie, this is just a debugging
aid.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-host-install b/ts-host-install
index 7423eb9b..ea087a25 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -218,6 +218,10 @@ SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$ho->{Ether}", A
 END
     }
 
+    open CANARY, '>>', "$persistent_net_rules" or die $!;
+    print CANARY "\n# - canary - came via initramfs\n" or die $!;
+    close CANARY or die $!;
+
     my %xopts;
 
     di_special_kernel($ho, sub {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 29/62] ts-host-install: Put canary in 70-persistent-net.rules
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This will allow us to see if the initramfs's network names are being
properly copied to the installed system.  Ie, this is just a debugging
aid.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-host-install | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-host-install b/ts-host-install
index 7423eb9b..ea087a25 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -218,6 +218,10 @@ SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="$ho->{Ether}", A
 END
     }
 
+    open CANARY, '>>', "$persistent_net_rules" or die $!;
+    print CANARY "\n# - canary - came via initramfs\n" or die $!;
+    close CANARY or die $!;
+
     my %xopts;
 
     di_special_kernel($ho, sub {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 30/62] persistent-net: Include initramfs script to copy to target
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This is the piece which actually copies the installer's network names
to the target.  It should not appear on the installed system, so it's
not in overlay-persistent-net.

Technically this is only useful when the installer has the
overlay-persistent-net in it, which is done only in ts-host-install
and not in all the places where setup_netboot_firstboot is used.
But without overlay-persistent-net it is harmless, and it is most
convenient to put it here.

The little script fragment was copied out of a jessie debian-installer
initramfs environment.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index e246c012..6309b246 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -848,6 +848,19 @@ if [ -f /target$grub ] ; then
 fi
 END
 
+    # See comment in debian_overlays re net.ifnames=1
+    $ho->{Suite} =~ m/jessie|wheezy/ or
+	preseed_hook_installscript($ho, $sfx,
+            '/usr/lib/base-installer.d/', '05udev', <<'END');
+#!/bin/sh -e
+
+RULESDIR=etc/udev/rules.d
+
+mkdir -p /target/$RULESDIR
+cp /$RULESDIR/70-persistent-*.rules /target/$RULESDIR 2>/dev/null || true
+
+END
+
     debian_overlays($ho, sub {
 	my ($srcdir, $tfilename) = @_;
 	preseed_hook_overlay($ho, $sfx, $srcdir, $tfilename);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 30/62] persistent-net: Include initramfs script to copy to target
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This is the piece which actually copies the installer's network names
to the target.  It should not appear on the installed system, so it's
not in overlay-persistent-net.

Technically this is only useful when the installer has the
overlay-persistent-net in it, which is done only in ts-host-install
and not in all the places where setup_netboot_firstboot is used.
But without overlay-persistent-net it is harmless, and it is most
convenient to put it here.

The little script fragment was copied out of a jessie debian-installer
initramfs environment.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index e246c012..6309b246 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -848,6 +848,19 @@ if [ -f /target$grub ] ; then
 fi
 END
 
+    # See comment in debian_overlays re net.ifnames=1
+    $ho->{Suite} =~ m/jessie|wheezy/ or
+	preseed_hook_installscript($ho, $sfx,
+            '/usr/lib/base-installer.d/', '05udev', <<'END');
+#!/bin/sh -e
+
+RULESDIR=etc/udev/rules.d
+
+mkdir -p /target/$RULESDIR
+cp /$RULESDIR/70-persistent-*.rules /target/$RULESDIR 2>/dev/null || true
+
+END
+
     debian_overlays($ho, sub {
 	my ($srcdir, $tfilename) = @_;
 	preseed_hook_overlay($ho, $sfx, $srcdir, $tfilename);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 31/62] persistent-net: Set net.ifnames=0 in di_installcmdline_core
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu, Ian Jackson

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
 Osstest/Debian.pm | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 6309b246..aff5acd5 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -81,6 +81,11 @@ sub debian_boot_setup ($$$$$;$) {
         $kopt .= ' '.$targkopt;
     }
 
+    # https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
+    # In fact these are anything but predictable.  We use the scheme
+    # from Debian jessie and earlier, persistent-net-generator etc.
+    $kopt .= ' net.ifnames=0';
+
     foreach my $hook ($hooks ? @$hooks : ()) {
         my $bo_hook= $hook->{EditBootOptions};
         $bo_hook->($ho, \$xenhopt, \$kopt) if $bo_hook;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 31/62] persistent-net: Set net.ifnames=0 in di_installcmdline_core
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Wei Liu, Ian Jackson

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
 Osstest/Debian.pm | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 6309b246..aff5acd5 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -81,6 +81,11 @@ sub debian_boot_setup ($$$$$;$) {
         $kopt .= ' '.$targkopt;
     }
 
+    # https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
+    # In fact these are anything but predictable.  We use the scheme
+    # from Debian jessie and earlier, persistent-net-generator etc.
+    $kopt .= ' net.ifnames=0';
+
     foreach my $hook ($hooks ? @$hooks : ()) {
         my $bo_hook= $hook->{EditBootOptions};
         $bo_hook->($ho, \$xenhopt, \$kopt) if $bo_hook;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 32/62] ts-kernel-build: Enable some additional drivers for Thunder-X
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Without this, our kernels do not find the storage.

Suggested-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-kernel-build | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/ts-kernel-build b/ts-kernel-build
index 0bc443de..3dad7d36 100755
--- a/ts-kernel-build
+++ b/ts-kernel-build
@@ -242,6 +242,17 @@ setopt CONFIG_MMC_DW m
 setopt CONFIG_MMC_DW_EXYNOS m
 setopt CONFIG_REGULATOR_S5M8767 m
 
+# Enable some additonal drivers for Thunder-X
+setopt CONFIG_PCI_HOST_THUNDER_PEM=y
+setopt CONFIG_PCI_HOST_THUNDER_ECAM=y
+setopt CONFIG_THUNDER_NIC_PF=m
+setopt CONFIG_THUNDER_NIC_VF=m
+setopt CONFIG_THUNDER_NIC_BGX=m
+setopt CONFIG_THUNDER_NIC_RGX=m
+setopt CONFIG_MDIO_THUNDER=m
+setopt CONFIG_I2C_THUNDERX=m
+setopt CONFIG_SPI_THUNDERX=m
+
 ####
 
 END
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 32/62] ts-kernel-build: Enable some additional drivers for Thunder-X
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Without this, our kernels do not find the storage.

Suggested-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-kernel-build | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/ts-kernel-build b/ts-kernel-build
index 0bc443de..3dad7d36 100755
--- a/ts-kernel-build
+++ b/ts-kernel-build
@@ -242,6 +242,17 @@ setopt CONFIG_MMC_DW m
 setopt CONFIG_MMC_DW_EXYNOS m
 setopt CONFIG_REGULATOR_S5M8767 m
 
+# Enable some additonal drivers for Thunder-X
+setopt CONFIG_PCI_HOST_THUNDER_PEM=y
+setopt CONFIG_PCI_HOST_THUNDER_ECAM=y
+setopt CONFIG_THUNDER_NIC_PF=m
+setopt CONFIG_THUNDER_NIC_VF=m
+setopt CONFIG_THUNDER_NIC_BGX=m
+setopt CONFIG_THUNDER_NIC_RGX=m
+setopt CONFIG_MDIO_THUNDER=m
+setopt CONFIG_I2C_THUNDERX=m
+setopt CONFIG_SPI_THUNDERX=m
+
 ####
 
 END
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 33/62] ts-xen-build: Enable ITS driver in Xen
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Julien Grall

From: Julien Grall <julien.grall@arm.com>

The ITS driver was added in Xen 4.10 as a technical preview feature.
However, it is required in order to boot Xen as Thunder-X because
PCI devices don't support legacy interrupt.

So enable CONFIG_ITS in our Xen build.

Signed-off-by: Julien Grall <julien.grall@arm.com>
---
 ts-xen-build | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-xen-build b/ts-xen-build
index 6ddfc533..1762cd61 100755
--- a/ts-xen-build
+++ b/ts-xen-build
@@ -128,6 +128,10 @@ END
 		echo >>xen/.config CONFIG_EXPERT=y
 		echo >>xen/.config CONFIG_HVM_FEP=y
 		echo >>xen/.config CONFIG_VERBOSE_DEBUG=y
+		# ITS driver is required to boot the Hardware Domain
+		# on Xen. For now (Xen 4.10/4.11 at at least),
+		# will be not built by default and gated by expert mode
+		echo >>xen/.config CONFIG_HAS_ITS=y
 	fi
 END
                );
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 33/62] ts-xen-build: Enable ITS driver in Xen
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Julien Grall

From: Julien Grall <julien.grall@arm.com>

The ITS driver was added in Xen 4.10 as a technical preview feature.
However, it is required in order to boot Xen as Thunder-X because
PCI devices don't support legacy interrupt.

So enable CONFIG_ITS in our Xen build.

Signed-off-by: Julien Grall <julien.grall@arm.com>
---
 ts-xen-build | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ts-xen-build b/ts-xen-build
index 6ddfc533..1762cd61 100755
--- a/ts-xen-build
+++ b/ts-xen-build
@@ -128,6 +128,10 @@ END
 		echo >>xen/.config CONFIG_EXPERT=y
 		echo >>xen/.config CONFIG_HVM_FEP=y
 		echo >>xen/.config CONFIG_VERBOSE_DEBUG=y
+		# ITS driver is required to boot the Hardware Domain
+		# on Xen. For now (Xen 4.10/4.11 at at least),
+		# will be not built by default and gated by expert mode
+		echo >>xen/.config CONFIG_HAS_ITS=y
 	fi
 END
                );
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 34/62] TestSupport: Move `stashed files' and `next_unique_name' earlier
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to make more use of this in intervening code.

Pure code motion.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 78 +++++++++++++++++++++++++-------------------------
 1 file changed, 39 insertions(+), 39 deletions(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 41f6f5f8..ce346097 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -300,6 +300,45 @@ sub get_filecontents ($;$) {
     return $data;
 }
 
+#---------- stashed files ----------
+
+sub next_unique_name ($) {
+    my ($fnref) = @_;
+    my $num = $$fnref =~ s/\+([1-9]\d*)$// ? $1 : 0;
+    $$fnref .= '+'.($num+1);
+}
+
+sub open_unique_stashfile ($) {
+    my ($leafref) = @_;
+    my $dh;
+    for (;;) {
+        my $df= $$leafref;
+        $dh= new IO::File "$stash/$df", O_RDWR|O_EXCL|O_CREAT;
+        last if $dh;
+        die "$df $!" unless $!==&EEXIST;
+        next_unique_name $leafref;
+    }
+    return $dh;
+}
+
+sub get_stashed ($$) {
+    my ($param, $otherflightjob) = @_; 
+    # may be run outside transaction, or with flights locked
+    my ($oflight, $ojob) = otherflightjob($otherflightjob);
+    my $path= get_runvar($param, $otherflightjob);
+    die "$path $& " if
+        $path =~ m,[^-+._0-9a-zA-Z/], or
+        $path =~ m/\.\./;
+    return "$c{Stash}/$oflight/$ojob/$path";
+}
+
+sub compress_stashed($) {
+    my ($path) = @_;
+    return unless -e "$stash/$path";
+    my $r= system 'gzip','-9vf','--',"$stash/$path";
+    die "$r $!" if $r;
+}
+
 #---------- runvars ----------
 
 sub store_runvar ($$) {
@@ -597,12 +636,6 @@ sub target_file_exists ($$) {
     die "$rfile $out ?";
 }
 
-sub next_unique_name ($) {
-    my ($fnref) = @_;
-    my $num = $$fnref =~ s/\+([1-9]\d*)$// ? $1 : 0;
-    $$fnref .= '+'.($num+1);
-}
-
 our $target_editfile_cancel_exception =
     bless { }, 'Osstest::TestSupport::TargetEditfileCancelException';
 
@@ -1369,39 +1402,6 @@ sub hostnamepath ($) {
     join '_', reverse @l;
 }
 
-#---------- stashed files ----------
-
-sub open_unique_stashfile ($) {
-    my ($leafref) = @_;
-    my $dh;
-    for (;;) {
-        my $df= $$leafref;
-        $dh= new IO::File "$stash/$df", O_RDWR|O_EXCL|O_CREAT;
-        last if $dh;
-        die "$df $!" unless $!==&EEXIST;
-        next_unique_name $leafref;
-    }
-    return $dh;
-}
-
-sub get_stashed ($$) {
-    my ($param, $otherflightjob) = @_; 
-    # may be run outside transaction, or with flights locked
-    my ($oflight, $ojob) = otherflightjob($otherflightjob);
-    my $path= get_runvar($param, $otherflightjob);
-    die "$path $& " if
-        $path =~ m,[^-+._0-9a-zA-Z/], or
-        $path =~ m/\.\./;
-    return "$c{Stash}/$oflight/$ojob/$path";
-}
-
-sub compress_stashed($) {
-    my ($path) = @_;
-    return unless -e "$stash/$path";
-    my $r= system 'gzip','-9vf','--',"$stash/$path";
-    die "$r $!" if $r;
-}
-
 #---------- other stuff ----------
 
 sub common_toolstack ($) {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 34/62] TestSupport: Move `stashed files' and `next_unique_name' earlier
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to make more use of this in intervening code.

Pure code motion.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 78 +++++++++++++++++++++++++-------------------------
 1 file changed, 39 insertions(+), 39 deletions(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 41f6f5f8..ce346097 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -300,6 +300,45 @@ sub get_filecontents ($;$) {
     return $data;
 }
 
+#---------- stashed files ----------
+
+sub next_unique_name ($) {
+    my ($fnref) = @_;
+    my $num = $$fnref =~ s/\+([1-9]\d*)$// ? $1 : 0;
+    $$fnref .= '+'.($num+1);
+}
+
+sub open_unique_stashfile ($) {
+    my ($leafref) = @_;
+    my $dh;
+    for (;;) {
+        my $df= $$leafref;
+        $dh= new IO::File "$stash/$df", O_RDWR|O_EXCL|O_CREAT;
+        last if $dh;
+        die "$df $!" unless $!==&EEXIST;
+        next_unique_name $leafref;
+    }
+    return $dh;
+}
+
+sub get_stashed ($$) {
+    my ($param, $otherflightjob) = @_; 
+    # may be run outside transaction, or with flights locked
+    my ($oflight, $ojob) = otherflightjob($otherflightjob);
+    my $path= get_runvar($param, $otherflightjob);
+    die "$path $& " if
+        $path =~ m,[^-+._0-9a-zA-Z/], or
+        $path =~ m/\.\./;
+    return "$c{Stash}/$oflight/$ojob/$path";
+}
+
+sub compress_stashed($) {
+    my ($path) = @_;
+    return unless -e "$stash/$path";
+    my $r= system 'gzip','-9vf','--',"$stash/$path";
+    die "$r $!" if $r;
+}
+
 #---------- runvars ----------
 
 sub store_runvar ($$) {
@@ -597,12 +636,6 @@ sub target_file_exists ($$) {
     die "$rfile $out ?";
 }
 
-sub next_unique_name ($) {
-    my ($fnref) = @_;
-    my $num = $$fnref =~ s/\+([1-9]\d*)$// ? $1 : 0;
-    $$fnref .= '+'.($num+1);
-}
-
 our $target_editfile_cancel_exception =
     bless { }, 'Osstest::TestSupport::TargetEditfileCancelException';
 
@@ -1369,39 +1402,6 @@ sub hostnamepath ($) {
     join '_', reverse @l;
 }
 
-#---------- stashed files ----------
-
-sub open_unique_stashfile ($) {
-    my ($leafref) = @_;
-    my $dh;
-    for (;;) {
-        my $df= $$leafref;
-        $dh= new IO::File "$stash/$df", O_RDWR|O_EXCL|O_CREAT;
-        last if $dh;
-        die "$df $!" unless $!==&EEXIST;
-        next_unique_name $leafref;
-    }
-    return $dh;
-}
-
-sub get_stashed ($$) {
-    my ($param, $otherflightjob) = @_; 
-    # may be run outside transaction, or with flights locked
-    my ($oflight, $ojob) = otherflightjob($otherflightjob);
-    my $path= get_runvar($param, $otherflightjob);
-    die "$path $& " if
-        $path =~ m,[^-+._0-9a-zA-Z/], or
-        $path =~ m/\.\./;
-    return "$c{Stash}/$oflight/$ojob/$path";
-}
-
-sub compress_stashed($) {
-    my ($path) = @_;
-    return unless -e "$stash/$path";
-    my $r= system 'gzip','-9vf','--',"$stash/$path";
-    die "$r $!" if $r;
-}
-
 #---------- other stuff ----------
 
 sub common_toolstack ($) {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 35/62] TestSupport: Move `target_somefile_getleaf' earlier
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to make more use of this in intervening code.

Pure code motion.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index ce346097..4e2f120a 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -504,6 +504,15 @@ sub remote_perl_script_done ($) {
     !$? or die "$thing->{What} $?";
 }
 
+sub target_somefile_getleaf ($$$) {
+    my ($lleaf_ref, $rdest, $ho) = @_;
+    if (!defined $$lleaf_ref) {
+        $$lleaf_ref= $rdest;
+        $$lleaf_ref =~ s,.*/,,;
+    }
+    $$lleaf_ref= hostnamepath($ho)."--$$lleaf_ref";
+}
+
 sub sshuho ($$) { my ($user,$ho)= @_; return "$user\@$ho->{Ip}"; }
 
 sub sshopts () {
@@ -591,15 +600,6 @@ sub target_install_packages_norec ($@) {
     target_run_pkgmanager_install($ho,\@packages,1);
 }
 
-sub target_somefile_getleaf ($$$) {
-    my ($lleaf_ref, $rdest, $ho) = @_;
-    if (!defined $$lleaf_ref) {
-        $$lleaf_ref= $rdest;
-        $$lleaf_ref =~ s,.*/,,;
-    }
-    $$lleaf_ref= hostnamepath($ho)."--$$lleaf_ref";
-}
-
 sub tpfcs_core {
     my ($tputfilef,$ho,$timeout,$filedata, $rdest,$lleaf) = @_;
     target_somefile_getleaf(\$lleaf,$rdest,$ho);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 35/62] TestSupport: Move `target_somefile_getleaf' earlier
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to make more use of this in intervening code.

Pure code motion.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index ce346097..4e2f120a 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -504,6 +504,15 @@ sub remote_perl_script_done ($) {
     !$? or die "$thing->{What} $?";
 }
 
+sub target_somefile_getleaf ($$$) {
+    my ($lleaf_ref, $rdest, $ho) = @_;
+    if (!defined $$lleaf_ref) {
+        $$lleaf_ref= $rdest;
+        $$lleaf_ref =~ s,.*/,,;
+    }
+    $$lleaf_ref= hostnamepath($ho)."--$$lleaf_ref";
+}
+
 sub sshuho ($$) { my ($user,$ho)= @_; return "$user\@$ho->{Ip}"; }
 
 sub sshopts () {
@@ -591,15 +600,6 @@ sub target_install_packages_norec ($@) {
     target_run_pkgmanager_install($ho,\@packages,1);
 }
 
-sub target_somefile_getleaf ($$$) {
-    my ($lleaf_ref, $rdest, $ho) = @_;
-    if (!defined $$lleaf_ref) {
-        $$lleaf_ref= $rdest;
-        $$lleaf_ref =~ s,.*/,,;
-    }
-    $$lleaf_ref= hostnamepath($ho)."--$$lleaf_ref";
-}
-
 sub tpfcs_core {
     my ($tputfilef,$ho,$timeout,$filedata, $rdest,$lleaf) = @_;
     target_somefile_getleaf(\$lleaf,$rdest,$ho);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 36/62] TestSupport: target_somefile_leaf rename and change a variable
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Rename this function.  `getleaf' contains `get' which makes it sound
like the function copies something, or returns answers suitable for
getting, or something.

Also rename `$rdest' to `$rfile' since it might be a source too.
(Although we are not about to make it a source...)

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 4e2f120a..a5870e4d 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -504,10 +504,10 @@ sub remote_perl_script_done ($) {
     !$? or die "$thing->{What} $?";
 }
 
-sub target_somefile_getleaf ($$$) {
-    my ($lleaf_ref, $rdest, $ho) = @_;
+sub target_somefile_leaf ($$$) {
+    my ($lleaf_ref, $rfile, $ho) = @_;
     if (!defined $$lleaf_ref) {
-        $$lleaf_ref= $rdest;
+        $$lleaf_ref= $rfile;
         $$lleaf_ref =~ s,.*/,,;
     }
     $$lleaf_ref= hostnamepath($ho)."--$$lleaf_ref";
@@ -602,7 +602,7 @@ sub target_install_packages_norec ($@) {
 
 sub tpfcs_core {
     my ($tputfilef,$ho,$timeout,$filedata, $rdest,$lleaf) = @_;
-    target_somefile_getleaf(\$lleaf,$rdest,$ho);
+    target_somefile_leaf(\$lleaf,$rdest,$ho);
 
     my $h= new IO::File "$stash/$lleaf", 'w' or die "$lleaf $!";
     print $h $filedata or die $!;
@@ -654,7 +654,7 @@ sub teditfileex {
     if (!defined $rdest) {
         $rdest= $rfile;
     }
-    target_somefile_getleaf(\$lleaf,$rdest,$ho);
+    target_somefile_leaf(\$lleaf,$rdest,$ho);
     my $lfile;
     
     for (;;) {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 36/62] TestSupport: target_somefile_leaf rename and change a variable
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Rename this function.  `getleaf' contains `get' which makes it sound
like the function copies something, or returns answers suitable for
getting, or something.

Also rename `$rdest' to `$rfile' since it might be a source too.
(Although we are not about to make it a source...)

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 4e2f120a..a5870e4d 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -504,10 +504,10 @@ sub remote_perl_script_done ($) {
     !$? or die "$thing->{What} $?";
 }
 
-sub target_somefile_getleaf ($$$) {
-    my ($lleaf_ref, $rdest, $ho) = @_;
+sub target_somefile_leaf ($$$) {
+    my ($lleaf_ref, $rfile, $ho) = @_;
     if (!defined $$lleaf_ref) {
-        $$lleaf_ref= $rdest;
+        $$lleaf_ref= $rfile;
         $$lleaf_ref =~ s,.*/,,;
     }
     $$lleaf_ref= hostnamepath($ho)."--$$lleaf_ref";
@@ -602,7 +602,7 @@ sub target_install_packages_norec ($@) {
 
 sub tpfcs_core {
     my ($tputfilef,$ho,$timeout,$filedata, $rdest,$lleaf) = @_;
-    target_somefile_getleaf(\$lleaf,$rdest,$ho);
+    target_somefile_leaf(\$lleaf,$rdest,$ho);
 
     my $h= new IO::File "$stash/$lleaf", 'w' or die "$lleaf $!";
     print $h $filedata or die $!;
@@ -654,7 +654,7 @@ sub teditfileex {
     if (!defined $rdest) {
         $rdest= $rfile;
     }
-    target_somefile_getleaf(\$lleaf,$rdest,$ho);
+    target_somefile_leaf(\$lleaf,$rdest,$ho);
     my $lfile;
     
     for (;;) {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 37/62] TestSupport: Provide target_getfile_root_stash
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This convenient function selects a local filename based on a target
filename, and copies the target file to the selected stash file.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index a5870e4d..ec867e4f 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -61,6 +61,7 @@ BEGIN {
                       target_cmd_inputfh_root sshuho
                       target_getfile target_getfile_root
                       target_putfile target_putfile_root
+		      target_getfile_root_stash
                       target_putfilecontents_stash
 		      target_putfilecontents_root_stash
                       target_put_guest_image target_editfile
@@ -553,6 +554,14 @@ sub target_getfile_root ($$$$) {
     my ($ho,$timeout, $rsrc,$ldst) = @_;
     tgetfileex('root', @_);
 }
+sub target_getfile_root_stash ($$$;$) {
+    my ($ho,$timeout,$rsrc, $lleaf) = @_; # => full path of local file
+    target_somefile_leaf(\$lleaf, $rsrc, $ho);
+    open_unique_stashfile(\$lleaf); # discard filehandle, leave file
+    my $lfile = "$stash/$lleaf";
+    target_getfile_root($ho,$timeout,$rsrc,$lfile);
+    return $lfile;
+}
 
 sub tputfileex {
     my ($ruser, $ho,$timeout, $lsrc,$rdst, $rsync) = @_;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 37/62] TestSupport: Provide target_getfile_root_stash
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This convenient function selects a local filename based on a target
filename, and copies the target file to the selected stash file.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/TestSupport.pm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index a5870e4d..ec867e4f 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -61,6 +61,7 @@ BEGIN {
                       target_cmd_inputfh_root sshuho
                       target_getfile target_getfile_root
                       target_putfile target_putfile_root
+		      target_getfile_root_stash
                       target_putfilecontents_stash
 		      target_putfilecontents_root_stash
                       target_put_guest_image target_editfile
@@ -553,6 +554,14 @@ sub target_getfile_root ($$$$) {
     my ($ho,$timeout, $rsrc,$ldst) = @_;
     tgetfileex('root', @_);
 }
+sub target_getfile_root_stash ($$$;$) {
+    my ($ho,$timeout,$rsrc, $lleaf) = @_; # => full path of local file
+    target_somefile_leaf(\$lleaf, $rsrc, $ho);
+    open_unique_stashfile(\$lleaf); # discard filehandle, leave file
+    my $lfile = "$stash/$lleaf";
+    target_getfile_root($ho,$timeout,$rsrc,$lfile);
+    return $lfile;
+}
 
 sub tputfileex {
     my ($ruser, $ho,$timeout, $lsrc,$rdst, $rsync) = @_;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 38/62] ts-guests-nbd-mirror: Use target_getfile_root_stash
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

That removes the rather ad-hoc open-coding.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-guests-nbd-mirror | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/ts-guests-nbd-mirror b/ts-guests-nbd-mirror
index 06903aaa..0365c47b 100755
--- a/ts-guests-nbd-mirror
+++ b/ts-guests-nbd-mirror
@@ -154,10 +154,7 @@ sub shuffleconfigs () {
 	my $gn= $gns[$i];
 	my $gho= $ghos[$i];
 	my $cfgpath= $r{ "$gho->{Guest}_cfgpath" };
-	my $file= $cfgpath;
-	$file=~ s,/,-,g;
-	$file= "$stash/".hostnamepath($cho)."--$file";
-	target_getfile_root($sho, 60, $cfgpath, $file);
+	my $file = target_getfile_root_stash($sho, 60, $cfgpath);
 	target_putfile_root($cho, 60, $file, $cfgpath);
     }
 }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 38/62] ts-guests-nbd-mirror: Use target_getfile_root_stash
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

That removes the rather ad-hoc open-coding.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-guests-nbd-mirror | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/ts-guests-nbd-mirror b/ts-guests-nbd-mirror
index 06903aaa..0365c47b 100755
--- a/ts-guests-nbd-mirror
+++ b/ts-guests-nbd-mirror
@@ -154,10 +154,7 @@ sub shuffleconfigs () {
 	my $gn= $gns[$i];
 	my $gho= $ghos[$i];
 	my $cfgpath= $r{ "$gho->{Guest}_cfgpath" };
-	my $file= $cfgpath;
-	$file=~ s,/,-,g;
-	$file= "$stash/".hostnamepath($cho)."--$file";
-	target_getfile_root($sho, 60, $cfgpath, $file);
+	my $file = target_getfile_root_stash($sho, 60, $cfgpath);
 	target_putfile_root($cho, 60, $file, $cfgpath);
     }
 }
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 39/62] preseed_base: chmod ssh host private keys to placate sshd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Otherwise:
  Could not load host key: /etc/ssh/ssh_host_ecdsa_key
  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  Permissions 0640 for '/etc/ssh/ssh_host_ed25519_key' are too open.
  It is recommended that your private key files are NOT accessible by others.
  This private key will be ignored.
  key_load_private: bad permissions
  Could not load host key: /etc/ssh/ssh_host_ed25519_key

This seems to start happening with stretch.  Presumably stretch is
more annoyingly picky than jessie.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index aff5acd5..d76dd03d 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -871,6 +871,14 @@ END
 	preseed_hook_overlay($ho, $sfx, $srcdir, $tfilename);
     });
 
+    # Host private keys in the overlays have to be group-readable
+    # at least, or no-one can use them.  But ssh is very fussy.
+    preseed_hook_command($ho, 'late_command', $sfx, <<END);
+#!/bin/sh
+set -ex
+chmod 600 /target/etc/ssh/ssh_host_*_key ||:
+END
+
     my $preseed = <<"END";
 d-i debian-installer/locale string en_GB
 d-i console-keymaps-at/keymap select gb
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 39/62] preseed_base: chmod ssh host private keys to placate sshd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Otherwise:
  Could not load host key: /etc/ssh/ssh_host_ecdsa_key
  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  @         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  Permissions 0640 for '/etc/ssh/ssh_host_ed25519_key' are too open.
  It is recommended that your private key files are NOT accessible by others.
  This private key will be ignored.
  key_load_private: bad permissions
  Could not load host key: /etc/ssh/ssh_host_ed25519_key

This seems to start happening with stretch.  Presumably stretch is
more annoyingly picky than jessie.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index aff5acd5..d76dd03d 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -871,6 +871,14 @@ END
 	preseed_hook_overlay($ho, $sfx, $srcdir, $tfilename);
     });
 
+    # Host private keys in the overlays have to be group-readable
+    # at least, or no-one can use them.  But ssh is very fussy.
+    preseed_hook_command($ho, 'late_command', $sfx, <<END);
+#!/bin/sh
+set -ex
+chmod 600 /target/etc/ssh/ssh_host_*_key ||:
+END
+
     my $preseed = <<"END";
 d-i debian-installer/locale string en_GB
 d-i console-keymaps-at/keymap select gb
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 40/62] preseed_base: break out debian_overlays_fixup_cmd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to want this for guests too.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index d76dd03d..78d242e4 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -36,7 +36,7 @@ BEGIN {
     @EXPORT      = qw(debian_boot_setup
                       di_installer_path di_special_kernel
                       setupboot_bootloader_edited_rune
-                      debian_overlays
+                      debian_overlays debian_overlays_fixup_cmd
                       debian_guest_suite debian_guest_di_version
                       %preseed_cmds
                       preseed_base
@@ -815,6 +815,14 @@ sub debian_overlays ($$) {
     $maybe->("$c{OverlayLocal}-$suite", 'overlay-local-$suite.tar');
 }
 
+sub debian_overlays_fixup_cmd ($;$) {
+    my ($ho, $subdir) = @_;
+    $subdir //= '';
+    return <<END;
+chmod 600 $subdir/etc/ssh/ssh_host_*_key ||:
+END
+}
+
 sub preseed_base ($$$;@) {
     my ($ho,$sfx,$extra_packages,%xopts) = @_;
 
@@ -873,10 +881,10 @@ END
 
     # Host private keys in the overlays have to be group-readable
     # at least, or no-one can use them.  But ssh is very fussy.
-    preseed_hook_command($ho, 'late_command', $sfx, <<END);
+    preseed_hook_command($ho, 'late_command', $sfx,
+			 <<END. debian_overlays_fixup_cmd($ho, '/target'));
 #!/bin/sh
 set -ex
-chmod 600 /target/etc/ssh/ssh_host_*_key ||:
 END
 
     my $preseed = <<"END";
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 40/62] preseed_base: break out debian_overlays_fixup_cmd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are going to want this for guests too.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index d76dd03d..78d242e4 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -36,7 +36,7 @@ BEGIN {
     @EXPORT      = qw(debian_boot_setup
                       di_installer_path di_special_kernel
                       setupboot_bootloader_edited_rune
-                      debian_overlays
+                      debian_overlays debian_overlays_fixup_cmd
                       debian_guest_suite debian_guest_di_version
                       %preseed_cmds
                       preseed_base
@@ -815,6 +815,14 @@ sub debian_overlays ($$) {
     $maybe->("$c{OverlayLocal}-$suite", 'overlay-local-$suite.tar');
 }
 
+sub debian_overlays_fixup_cmd ($;$) {
+    my ($ho, $subdir) = @_;
+    $subdir //= '';
+    return <<END;
+chmod 600 $subdir/etc/ssh/ssh_host_*_key ||:
+END
+}
+
 sub preseed_base ($$$;@) {
     my ($ho,$sfx,$extra_packages,%xopts) = @_;
 
@@ -873,10 +881,10 @@ END
 
     # Host private keys in the overlays have to be group-readable
     # at least, or no-one can use them.  But ssh is very fussy.
-    preseed_hook_command($ho, 'late_command', $sfx, <<END);
+    preseed_hook_command($ho, 'late_command', $sfx,
+			 <<END. debian_overlays_fixup_cmd($ho, '/target'));
 #!/bin/sh
 set -ex
-chmod 600 /target/etc/ssh/ssh_host_*_key ||:
 END
 
     my $preseed = <<"END";
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 41/62] ts-debian-fixup: Use debian_overlays_fixup_cmd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Otherwise we get the same error for guests as was prevented for hosts
by "preseed_base: chmod ssh host private keys to placate sshd".

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-fixup | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 0e553d47..7d9d0398 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -206,7 +206,12 @@ savecfg();
 ether();
 target_kernkind_check($gho);
 access();
+
 debian_overlays($ho, \&overlay);
+target_cmd_root($ho, <<END.debian_overlays_fixup_cmd($ho, $mountpoint));
+set -ex
+END
+
 console();
 filesystems();
 otherfixupcfg();
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 41/62] ts-debian-fixup: Use debian_overlays_fixup_cmd
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Otherwise we get the same error for guests as was prevented for hosts
by "preseed_base: chmod ssh host private keys to placate sshd".

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-fixup | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 0e553d47..7d9d0398 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -206,7 +206,12 @@ savecfg();
 ether();
 target_kernkind_check($gho);
 access();
+
 debian_overlays($ho, \&overlay);
+target_cmd_root($ho, <<END.debian_overlays_fixup_cmd($ho, $mountpoint));
+set -ex
+END
+
 console();
 filesystems();
 otherfixupcfg();
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 42/62] preseed_hook_command: allow specifying di keys other than preseed/*
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Ie, only add preseed/ if there is not already a slash.

No functional change with existing call sites other than urls and
temporary filenames.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 78d242e4..f8ff4f46 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1472,9 +1472,12 @@ END
 
 sub preseed_hook_command ($$$$) {
     my ($ho, $di_key, $sfx, $text) = @_;
+    $di_key = "preseed/$di_key" unless $di_key =~ m{/};
+    my $basename = $di_key;
+    $basename =~ s{/}{--};
     my $ix= $#{ $preseed_cmds{$di_key} } + 1;
-    my $url= create_webfile($ho, "$di_key-$ix$sfx", $text);
-    my $file= "/tmp/$di_key-$ix";
+    my $url= create_webfile($ho, "$basename-$ix$sfx", $text);
+    my $file= "/tmp/$basename-$ix";
     my $cmd_cmd= "$preseed_wget -O $file '$url' && chmod +x $file && $file";
     push @{ $preseed_cmds{$di_key} }, $cmd_cmd;
 }
@@ -1521,7 +1524,7 @@ END
 sub preseed_hook_cmds () {
     my $preseed;
     foreach my $di_key (keys %preseed_cmds) {
-        $preseed .= "d-i preseed/$di_key string ".
+        $preseed .= "d-i $di_key string ".
             (join ' && ', @{ $preseed_cmds{$di_key} }). "\n";
     }
     return $preseed;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 42/62] preseed_hook_command: allow specifying di keys other than preseed/*
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Ie, only add preseed/ if there is not already a slash.

No functional change with existing call sites other than urls and
temporary filenames.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 78d242e4..f8ff4f46 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1472,9 +1472,12 @@ END
 
 sub preseed_hook_command ($$$$) {
     my ($ho, $di_key, $sfx, $text) = @_;
+    $di_key = "preseed/$di_key" unless $di_key =~ m{/};
+    my $basename = $di_key;
+    $basename =~ s{/}{--};
     my $ix= $#{ $preseed_cmds{$di_key} } + 1;
-    my $url= create_webfile($ho, "$di_key-$ix$sfx", $text);
-    my $file= "/tmp/$di_key-$ix";
+    my $url= create_webfile($ho, "$basename-$ix$sfx", $text);
+    my $file= "/tmp/$basename-$ix";
     my $cmd_cmd= "$preseed_wget -O $file '$url' && chmod +x $file && $file";
     push @{ $preseed_cmds{$di_key} }, $cmd_cmd;
 }
@@ -1521,7 +1524,7 @@ END
 sub preseed_hook_cmds () {
     my $preseed;
     foreach my $di_key (keys %preseed_cmds) {
-        $preseed .= "d-i preseed/$di_key string ".
+        $preseed .= "d-i $di_key string ".
             (join ' && ', @{ $preseed_cmds{$di_key} }). "\n";
     }
     return $preseed;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 43/62] preseed_hook_installscript: Use partman/early_command, not preseed/
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

On iso-based installs, with stretch, preseed/early_command runs before
the network is up.  This causes the install to fail.

Our existing call sites add things to
   /usr/lib/base-installer.d/
   /lib/partman/init.d/
for which this is still early enough.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index f8ff4f46..3afea62b 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1484,11 +1484,12 @@ sub preseed_hook_command ($$$$) {
 
 sub preseed_hook_installscript ($$$$$) {
     my ($ho, $sfx, $installer_dir, $installer_leaf, $data) = @_;
+    # the specified script is installed via partman/early_command
     my $installer_pathname= "$installer_dir/$installer_leaf";
     my $urlfile= $installer_pathname;
     $urlfile =~ s/[^-_0-9a-z]/ sprintf "X%02x", ord($&) /ge;
     my $url= create_webfile($ho, $urlfile, $data);
-    preseed_hook_command($ho, 'early_command', $sfx, <<END);
+    preseed_hook_command($ho, 'partman/early_command', $sfx, <<END);
 #!/bin/sh
 set -ex
 mkdir -p '$installer_dir'
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 43/62] preseed_hook_installscript: Use partman/early_command, not preseed/
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

On iso-based installs, with stretch, preseed/early_command runs before
the network is up.  This causes the install to fail.

Our existing call sites add things to
   /usr/lib/base-installer.d/
   /lib/partman/init.d/
for which this is still early enough.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index f8ff4f46..3afea62b 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1484,11 +1484,12 @@ sub preseed_hook_command ($$$$) {
 
 sub preseed_hook_installscript ($$$$$) {
     my ($ho, $sfx, $installer_dir, $installer_leaf, $data) = @_;
+    # the specified script is installed via partman/early_command
     my $installer_pathname= "$installer_dir/$installer_leaf";
     my $urlfile= $installer_pathname;
     $urlfile =~ s/[^-_0-9a-z]/ sprintf "X%02x", ord($&) /ge;
     my $url= create_webfile($ho, $urlfile, $data);
-    preseed_hook_command($ho, 'early_command', $sfx, <<END);
+    preseed_hook_command($ho, 'partman/early_command', $sfx, <<END);
 #!/bin/sh
 set -ex
 mkdir -p '$installer_dir'
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 44/62] Debian: preseed_hook_installscript: New $atonce option
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This runs the script right away as well as merely installing it.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 3afea62b..d1b52b5b 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1482,20 +1482,23 @@ sub preseed_hook_command ($$$$) {
     push @{ $preseed_cmds{$di_key} }, $cmd_cmd;
 }
 
-sub preseed_hook_installscript ($$$$$) {
-    my ($ho, $sfx, $installer_dir, $installer_leaf, $data) = @_;
+sub preseed_hook_installscript ($$$$$;$) {
+    my ($ho, $sfx, $installer_dir, $installer_leaf, $data, $atonce) = @_;
     # the specified script is installed via partman/early_command
     my $installer_pathname= "$installer_dir/$installer_leaf";
     my $urlfile= $installer_pathname;
     $urlfile =~ s/[^-_0-9a-z]/ sprintf "X%02x", ord($&) /ge;
     my $url= create_webfile($ho, $urlfile, $data);
-    preseed_hook_command($ho, 'partman/early_command', $sfx, <<END);
+    preseed_hook_command($ho, 'partman/early_command', $sfx,
+			 <<END.($atonce?<<END_ATONCE:''));
 #!/bin/sh
 set -ex
 mkdir -p '$installer_dir'
 $preseed_wget -O '$installer_pathname' '$url'
 chmod +x '$installer_pathname'
 END
+'$installer_pathname'
+END_ATONCE
 }
 
 sub preseed_hook_overlay ($$$$) {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 44/62] Debian: preseed_hook_installscript: New $atonce option
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This runs the script right away as well as merely installing it.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 3afea62b..d1b52b5b 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1482,20 +1482,23 @@ sub preseed_hook_command ($$$$) {
     push @{ $preseed_cmds{$di_key} }, $cmd_cmd;
 }
 
-sub preseed_hook_installscript ($$$$$) {
-    my ($ho, $sfx, $installer_dir, $installer_leaf, $data) = @_;
+sub preseed_hook_installscript ($$$$$;$) {
+    my ($ho, $sfx, $installer_dir, $installer_leaf, $data, $atonce) = @_;
     # the specified script is installed via partman/early_command
     my $installer_pathname= "$installer_dir/$installer_leaf";
     my $urlfile= $installer_pathname;
     $urlfile =~ s/[^-_0-9a-z]/ sprintf "X%02x", ord($&) /ge;
     my $url= create_webfile($ho, $urlfile, $data);
-    preseed_hook_command($ho, 'partman/early_command', $sfx, <<END);
+    preseed_hook_command($ho, 'partman/early_command', $sfx,
+			 <<END.($atonce?<<END_ATONCE:''));
 #!/bin/sh
 set -ex
 mkdir -p '$installer_dir'
 $preseed_wget -O '$installer_pathname' '$url'
 chmod +x '$installer_pathname'
 END
+'$installer_pathname'
+END_ATONCE
 }
 
 sub preseed_hook_overlay ($$$$) {
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 45/62] Debian: partman scripts: Run right away too
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are switching the installation of these to partman/early_command
which runs as a result of a /lib/partman/init.d hook.  That means that
things we install don't get picked up, so run them right away (too).

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index d1b52b5b..9dec321f 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1157,7 +1157,7 @@ sub preseed_create ($$;@) {
     my $d_i = $ho->{Tftp}{Path}.'/'.di_installer_path($ho);
 
     preseed_hook_installscript($ho, $sfx,
-          '/lib/partman/init.d', '000override-parted-devices', <<END);
+          '/lib/partman/init.d', '000override-parted-devices', <<END, 1);
 #!/bin/sh
 set -ex
 cd /bin
@@ -1171,7 +1171,7 @@ chmod +x parted_devices
 END
 
     preseed_hook_installscript($ho, $sfx,
-          '/lib/partman/init.d', '25erase-other-disks', <<END);
+          '/lib/partman/init.d', '25erase-other-disks', <<END, 1);
 #!/bin/sh
 set -ex
 stamp=/var/erase-other-disks.stamp
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 45/62] Debian: partman scripts: Run right away too
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

We are switching the installation of these to partman/early_command
which runs as a result of a /lib/partman/init.d hook.  That means that
things we install don't get picked up, so run them right away (too).

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index d1b52b5b..9dec321f 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1157,7 +1157,7 @@ sub preseed_create ($$;@) {
     my $d_i = $ho->{Tftp}{Path}.'/'.di_installer_path($ho);
 
     preseed_hook_installscript($ho, $sfx,
-          '/lib/partman/init.d', '000override-parted-devices', <<END);
+          '/lib/partman/init.d', '000override-parted-devices', <<END, 1);
 #!/bin/sh
 set -ex
 cd /bin
@@ -1171,7 +1171,7 @@ chmod +x parted_devices
 END
 
     preseed_hook_installscript($ho, $sfx,
-          '/lib/partman/init.d', '25erase-other-disks', <<END);
+          '/lib/partman/init.d', '25erase-other-disks', <<END, 1);
 #!/bin/sh
 set -ex
 stamp=/var/erase-other-disks.stamp
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 46/62] Debian: set partman-lvm/device_remove_lvm_span
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Web searching[1] suggests that this suppresses this error:

  !! ERROR: Unable to automatically remove LVM data
  Because the volume group(s) on the selected device also consist of
  physical volumes on other devices, it is not considered safe to
  remove its LVM data automatically. If you wish to use this device
  for partitioning, please remove its LVM data first.

[1] eg https://serverfault.com/questions/571363/unable-to-automatically-remove-lvm-data

It doesn't, though.  I am only experiencing it now because the ad-hoc
disk-erasing (25erase-other-disks) is broken for other reasons.  But
let's have it anyway as it sounds like a thing we might want.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 9dec321f..073b776c 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -907,6 +907,7 @@ d-i partman-partitioning/confirm_write_new_label boolean true
 d-i partman/choose_partition select finish
 d-i partman/confirm boolean true
 d-i partman-lvm/confirm boolean true
+d-i partman-lvm/device_remove_lvm_span boolean true
 
 d-i partman/confirm_nooverwrite true
 d-i partman-lvm/confirm_nooverwrite true
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 46/62] Debian: set partman-lvm/device_remove_lvm_span
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Web searching[1] suggests that this suppresses this error:

  !! ERROR: Unable to automatically remove LVM data
  Because the volume group(s) on the selected device also consist of
  physical volumes on other devices, it is not considered safe to
  remove its LVM data automatically. If you wish to use this device
  for partitioning, please remove its LVM data first.

[1] eg https://serverfault.com/questions/571363/unable-to-automatically-remove-lvm-data

It doesn't, though.  I am only experiencing it now because the ad-hoc
disk-erasing (25erase-other-disks) is broken for other reasons.  But
let's have it anyway as it sounds like a thing we might want.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 9dec321f..073b776c 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -907,6 +907,7 @@ d-i partman-partitioning/confirm_write_new_label boolean true
 d-i partman/choose_partition select finish
 d-i partman/confirm boolean true
 d-i partman-lvm/confirm boolean true
+d-i partman-lvm/device_remove_lvm_span boolean true
 
 d-i partman/confirm_nooverwrite true
 d-i partman-lvm/confirm_nooverwrite true
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 47/62] Debian: Add reference to bug numbers for erase-other-disks
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 073b776c..79b7960d 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1171,6 +1171,7 @@ END2
 chmod +x parted_devices
 END
 
+    # Work around Debian bugs #601363 #687160
     preseed_hook_installscript($ho, $sfx,
           '/lib/partman/init.d', '25erase-other-disks', <<END, 1);
 #!/bin/sh
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 47/62] Debian: Add reference to bug numbers for erase-other-disks
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 073b776c..79b7960d 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1171,6 +1171,7 @@ END2
 chmod +x parted_devices
 END
 
+    # Work around Debian bugs #601363 #687160
     preseed_hook_installscript($ho, $sfx,
           '/lib/partman/init.d', '25erase-other-disks', <<END, 1);
 #!/bin/sh
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 48/62] dm restrict audit: actually install right package for fishdescriptor
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  dm restrict audit: install newer chiark-scripts for fishdescriptor
a locally-provided chiark-scripts_6.0.2_all.deb was installed for
jessie.  For stretch a backport was installed, but mistakenly
of chiark-utils-bin rather than chiark-scripts.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 79b7960d..9aa88822 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1060,7 +1060,7 @@ sub preseed_create_guest ($$$;@) {
     if (grep { m/_dmrestrict$/ && $r{$_} } keys %r and
 	$suite =~ m/stretch/) {
 	preseed_backports_packages($ho, $sfx, \%xopts, $suite,
-				   qw(chiark-utils-bin));
+				   qw(chiark-scripts));
     }
 
     my $preseed_file= preseed_base($ho, $sfx, $extra_packages, %xopts);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 48/62] dm restrict audit: actually install right package for fishdescriptor
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  dm restrict audit: install newer chiark-scripts for fishdescriptor
a locally-provided chiark-scripts_6.0.2_all.deb was installed for
jessie.  For stretch a backport was installed, but mistakenly
of chiark-utils-bin rather than chiark-scripts.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 79b7960d..9aa88822 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1060,7 +1060,7 @@ sub preseed_create_guest ($$$;@) {
     if (grep { m/_dmrestrict$/ && $r{$_} } keys %r and
 	$suite =~ m/stretch/) {
 	preseed_backports_packages($ho, $sfx, \%xopts, $suite,
-				   qw(chiark-utils-bin));
+				   qw(chiark-scripts));
     }
 
     my $preseed_file= preseed_base($ho, $sfx, $extra_packages, %xopts);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 49/62] Debian: Move preseed_backports_packages earlier
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

No functional change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 88 +++++++++++++++++++++++++++----------------------------
 1 file changed, 44 insertions(+), 44 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 9aa88822..25bf8e88 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -823,6 +823,50 @@ chmod 600 $subdir/etc/ssh/ssh_host_*_key ||:
 END
 }
 
+sub preseed_backports_packages ($$$$@) {
+    my ($ho, $sfx, $xopts, $suite, @pkgs) = @_;
+
+    if (! $xopts->{BackportsSourcesAlreadyAdded}++) {
+	my $bp_url = $c{"DebianSnapshotBackports_$suite"};
+	$bp_url ||= "http://$c{DebianMirrorHost}/$c{DebianMirrorSubpath}";
+
+	my $apt_insert='';
+	my $extra_rune='';
+	if ($suite =~ m/wheezy|jessie/) {
+	    # this has global effect, unfortunately
+	    $extra_rune = <<END;
+d=/target/etc/apt/apt.conf.d
+mkdir -p \$d
+cat >\$d/50osstestsnapshot <<EOF
+Acquire::Check-Valid-Until false;
+EOF
+END
+	} else {
+	    $apt_insert = '[check-valid-until=no]';
+	}
+
+	preseed_hook_command($ho, 'late_command', $sfx, <<END);
+#!/bin/sh
+set -ex
+
+cat <<EOF >>/target/etc/apt/sources.list
+
+# $suite backports
+deb $apt_insert $bp_url $suite-backports main
+EOF
+$extra_rune
+in-target apt-get update
+END
+    }
+
+    preseed_hook_command($ho, 'late_command', $sfx, <<END);
+#!/bin/sh
+set -ex
+
+in-target apt-get install -y -t $suite-backports @pkgs
+END
+}
+
 sub preseed_base ($$$;@) {
     my ($ho,$sfx,$extra_packages,%xopts) = @_;
 
@@ -986,50 +1030,6 @@ END
     return $preseed;
 }
 
-sub preseed_backports_packages ($$$$@) {
-    my ($ho, $sfx, $xopts, $suite, @pkgs) = @_;
-
-    if (! $xopts->{BackportsSourcesAlreadyAdded}++) {
-	my $bp_url = $c{"DebianSnapshotBackports_$suite"};
-	$bp_url ||= "http://$c{DebianMirrorHost}/$c{DebianMirrorSubpath}";
-
-	my $apt_insert='';
-	my $extra_rune='';
-	if ($suite =~ m/wheezy|jessie/) {
-	    # this has global effect, unfortunately
-	    $extra_rune = <<END;
-d=/target/etc/apt/apt.conf.d
-mkdir -p \$d
-cat >\$d/50osstestsnapshot <<EOF
-Acquire::Check-Valid-Until false;
-EOF
-END
-	} else {
-	    $apt_insert = '[check-valid-until=no]';
-	}
-
-	preseed_hook_command($ho, 'late_command', $sfx, <<END);
-#!/bin/sh
-set -ex
-
-cat <<EOF >>/target/etc/apt/sources.list
-
-# $suite backports
-deb $apt_insert $bp_url $suite-backports main
-EOF
-$extra_rune
-in-target apt-get update
-END
-    }
-
-    preseed_hook_command($ho, 'late_command', $sfx, <<END);
-#!/bin/sh
-set -ex
-
-in-target apt-get install -y -t $suite-backports @pkgs
-END
-}
-
 sub preseed_create_guest ($$$;@) {
     my ($ho, $arch, $sfx, %xopts) = @_;
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 49/62] Debian: Move preseed_backports_packages earlier
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

No functional change.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 88 +++++++++++++++++++++++++++----------------------------
 1 file changed, 44 insertions(+), 44 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 9aa88822..25bf8e88 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -823,6 +823,50 @@ chmod 600 $subdir/etc/ssh/ssh_host_*_key ||:
 END
 }
 
+sub preseed_backports_packages ($$$$@) {
+    my ($ho, $sfx, $xopts, $suite, @pkgs) = @_;
+
+    if (! $xopts->{BackportsSourcesAlreadyAdded}++) {
+	my $bp_url = $c{"DebianSnapshotBackports_$suite"};
+	$bp_url ||= "http://$c{DebianMirrorHost}/$c{DebianMirrorSubpath}";
+
+	my $apt_insert='';
+	my $extra_rune='';
+	if ($suite =~ m/wheezy|jessie/) {
+	    # this has global effect, unfortunately
+	    $extra_rune = <<END;
+d=/target/etc/apt/apt.conf.d
+mkdir -p \$d
+cat >\$d/50osstestsnapshot <<EOF
+Acquire::Check-Valid-Until false;
+EOF
+END
+	} else {
+	    $apt_insert = '[check-valid-until=no]';
+	}
+
+	preseed_hook_command($ho, 'late_command', $sfx, <<END);
+#!/bin/sh
+set -ex
+
+cat <<EOF >>/target/etc/apt/sources.list
+
+# $suite backports
+deb $apt_insert $bp_url $suite-backports main
+EOF
+$extra_rune
+in-target apt-get update
+END
+    }
+
+    preseed_hook_command($ho, 'late_command', $sfx, <<END);
+#!/bin/sh
+set -ex
+
+in-target apt-get install -y -t $suite-backports @pkgs
+END
+}
+
 sub preseed_base ($$$;@) {
     my ($ho,$sfx,$extra_packages,%xopts) = @_;
 
@@ -986,50 +1030,6 @@ END
     return $preseed;
 }
 
-sub preseed_backports_packages ($$$$@) {
-    my ($ho, $sfx, $xopts, $suite, @pkgs) = @_;
-
-    if (! $xopts->{BackportsSourcesAlreadyAdded}++) {
-	my $bp_url = $c{"DebianSnapshotBackports_$suite"};
-	$bp_url ||= "http://$c{DebianMirrorHost}/$c{DebianMirrorSubpath}";
-
-	my $apt_insert='';
-	my $extra_rune='';
-	if ($suite =~ m/wheezy|jessie/) {
-	    # this has global effect, unfortunately
-	    $extra_rune = <<END;
-d=/target/etc/apt/apt.conf.d
-mkdir -p \$d
-cat >\$d/50osstestsnapshot <<EOF
-Acquire::Check-Valid-Until false;
-EOF
-END
-	} else {
-	    $apt_insert = '[check-valid-until=no]';
-	}
-
-	preseed_hook_command($ho, 'late_command', $sfx, <<END);
-#!/bin/sh
-set -ex
-
-cat <<EOF >>/target/etc/apt/sources.list
-
-# $suite backports
-deb $apt_insert $bp_url $suite-backports main
-EOF
-$extra_rune
-in-target apt-get update
-END
-    }
-
-    preseed_hook_command($ho, 'late_command', $sfx, <<END);
-#!/bin/sh
-set -ex
-
-in-target apt-get install -y -t $suite-backports @pkgs
-END
-}
-
 sub preseed_create_guest ($$$;@) {
     my ($ho, $arch, $sfx, %xopts) = @_;
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 50/62] dm restrict audit: actually install fishdescriptor in host
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  dm restrict audit: install newer chiark-scripts for fishdescriptor
arrangements were made to install a backport of chiark-scripts
but the code was mistakenly placed in preseed_create_guest but
of course it's needed in the host.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 25bf8e88..8d53bbe1 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1022,6 +1022,12 @@ END
     # security.d.o CDN seems unreliable right now
     # and jessie-updates is no more
 
+    if (grep { m/_dmrestrict$/ && $r{$_} } keys %r and
+	$suite =~ m/stretch/) {
+	preseed_backports_packages($ho, $sfx, \%xopts, $suite,
+				   qw(chiark-scripts));
+    }
+
     $preseed .= <<"END";
 
 ### END OF DEBIAN PRESEED BASE
@@ -1057,11 +1063,6 @@ sub preseed_create_guest ($$$;@) {
             $extra_packages = "pv-grub-menu";
         }
     }
-    if (grep { m/_dmrestrict$/ && $r{$_} } keys %r and
-	$suite =~ m/stretch/) {
-	preseed_backports_packages($ho, $sfx, \%xopts, $suite,
-				   qw(chiark-scripts));
-    }
 
     my $preseed_file= preseed_base($ho, $sfx, $extra_packages, %xopts);
     $preseed_file.= (<<END);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 50/62] dm restrict audit: actually install fishdescriptor in host
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  dm restrict audit: install newer chiark-scripts for fishdescriptor
arrangements were made to install a backport of chiark-scripts
but the code was mistakenly placed in preseed_create_guest but
of course it's needed in the host.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 25bf8e88..8d53bbe1 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -1022,6 +1022,12 @@ END
     # security.d.o CDN seems unreliable right now
     # and jessie-updates is no more
 
+    if (grep { m/_dmrestrict$/ && $r{$_} } keys %r and
+	$suite =~ m/stretch/) {
+	preseed_backports_packages($ho, $sfx, \%xopts, $suite,
+				   qw(chiark-scripts));
+    }
+
     $preseed .= <<"END";
 
 ### END OF DEBIAN PRESEED BASE
@@ -1057,11 +1063,6 @@ sub preseed_create_guest ($$$;@) {
             $extra_packages = "pv-grub-menu";
         }
     }
-    if (grep { m/_dmrestrict$/ && $r{$_} } keys %r and
-	$suite =~ m/stretch/) {
-	preseed_backports_packages($ho, $sfx, \%xopts, $suite,
-				   qw(chiark-scripts));
-    }
 
     my $preseed_file= preseed_base($ho, $sfx, $extra_packages, %xopts);
     $preseed_file.= (<<END);
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 51/62] dm restrict audit: always install (some) chiark-scripts
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  dm restrict audit: install newer chiark-scripts for fishdescriptor
arrangements were made to install suitable chiark-scripts for
for jessie and stretch.

For buster and later, the mainline Debian version of chiark-scripts is
indeed sufficient, but nothing installed it.  Do that.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 8d53bbe1..9d7d1518 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -997,7 +997,7 @@ d-i apt-setup/another boolean false
 d-i apt-setup/non-free boolean false
 d-i apt-setup/contrib boolean false
 
-d-i pkgsel/include string openssh-server, ntp, ntpdate, ethtool, chiark-utils-bin, wget, $extra_packages
+d-i pkgsel/include string openssh-server, ntp, ntpdate, ethtool, chiark-utils-bin, chiark-scripts, wget, $extra_packages
 
 d-i grub-installer/force-efi-extra-removable boolean true
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 51/62] dm restrict audit: always install (some) chiark-scripts
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In
  dm restrict audit: install newer chiark-scripts for fishdescriptor
arrangements were made to install suitable chiark-scripts for
for jessie and stretch.

For buster and later, the mainline Debian version of chiark-scripts is
indeed sufficient, but nothing installed it.  Do that.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 8d53bbe1..9d7d1518 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -997,7 +997,7 @@ d-i apt-setup/another boolean false
 d-i apt-setup/non-free boolean false
 d-i apt-setup/contrib boolean false
 
-d-i pkgsel/include string openssh-server, ntp, ntpdate, ethtool, chiark-utils-bin, wget, $extra_packages
+d-i pkgsel/include string openssh-server, ntp, ntpdate, ethtool, chiark-utils-bin, chiark-scripts, wget, $extra_packages
 
 d-i grub-installer/force-efi-extra-removable boolean true
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 52/62] target_install_packages: Consistently use qw(...) rather than '...'
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

qw(...) splits its argument into words.

There is one semantic change, where two package names were passed in a
single argument.  That worked by accident.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-install | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/ts-xen-install b/ts-xen-install
index 80952857..03f8c03e 100755
--- a/ts-xen-install
+++ b/ts-xen-install
@@ -53,18 +53,18 @@ sub packages () {
 			       qemu-utils
                                netcat-openbsd));
     if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
-        target_install_packages($ho, 'net-tools libnl-route-3-200');
+        target_install_packages($ho, qw(net-tools libnl-route-3-200));
     }
     if ($ho->{Suite} =~ m/jessie/) {
-        target_install_packages($ho, 'libnl-route-3-200');
+        target_install_packages($ho, qw(libnl-route-3-200));
     }
     target_install_packages($ho,
 			    $ho->{Suite} =~ /squeeze/ ? "libyajl1" : "libyajl2");
     if ($ho->{Suite} !~ m/lenny|squeeze/) {
-        target_install_packages($ho, 'libfdt1');
+        target_install_packages($ho, qw(libfdt1));
     }
     if ($r{arch} eq 'i386') {
-	target_install_packages($ho, 'libc6-xen');
+	target_install_packages($ho, qw(libc6-xen));
     }
     target_install_packages($ho, @{toolstack($ho)->{ExtraPackages}})
         if toolstack($ho)->{ExtraPackages};
@@ -88,7 +88,7 @@ sub some_extradebs ($) {
 	    $ontarget = "extrapackages-$cfgvar-$counter"; $counter++;
 	    $dpkgopts = '-iGROEB';
 	    logm("$cfgvar: updating packages from directory $path");
-	    target_install_packages($ho, 'rsync') unless $rsync_installed++;
+	    target_install_packages($ho, qw(rsync)) unless $rsync_installed++;
 	    target_putfile_root($ho,300, "$path/.", $ontarget, '-r');
 	} elsif ($path =~ m{\.deb$}) {
 	    $path =~ s{_\.deb}{ "_$r{arch}.deb" }e;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 52/62] target_install_packages: Consistently use qw(...) rather than '...'
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

qw(...) splits its argument into words.

There is one semantic change, where two package names were passed in a
single argument.  That worked by accident.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-install | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/ts-xen-install b/ts-xen-install
index 80952857..03f8c03e 100755
--- a/ts-xen-install
+++ b/ts-xen-install
@@ -53,18 +53,18 @@ sub packages () {
 			       qemu-utils
                                netcat-openbsd));
     if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
-        target_install_packages($ho, 'net-tools libnl-route-3-200');
+        target_install_packages($ho, qw(net-tools libnl-route-3-200));
     }
     if ($ho->{Suite} =~ m/jessie/) {
-        target_install_packages($ho, 'libnl-route-3-200');
+        target_install_packages($ho, qw(libnl-route-3-200));
     }
     target_install_packages($ho,
 			    $ho->{Suite} =~ /squeeze/ ? "libyajl1" : "libyajl2");
     if ($ho->{Suite} !~ m/lenny|squeeze/) {
-        target_install_packages($ho, 'libfdt1');
+        target_install_packages($ho, qw(libfdt1));
     }
     if ($r{arch} eq 'i386') {
-	target_install_packages($ho, 'libc6-xen');
+	target_install_packages($ho, qw(libc6-xen));
     }
     target_install_packages($ho, @{toolstack($ho)->{ExtraPackages}})
         if toolstack($ho)->{ExtraPackages};
@@ -88,7 +88,7 @@ sub some_extradebs ($) {
 	    $ontarget = "extrapackages-$cfgvar-$counter"; $counter++;
 	    $dpkgopts = '-iGROEB';
 	    logm("$cfgvar: updating packages from directory $path");
-	    target_install_packages($ho, 'rsync') unless $rsync_installed++;
+	    target_install_packages($ho, qw(rsync)) unless $rsync_installed++;
 	    target_putfile_root($ho,300, "$path/.", $ontarget, '-r');
 	} elsif ($path =~ m{\.deb$}) {
 	    $path =~ s{_\.deb}{ "_$r{arch}.deb" }e;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 53/62] ts-xen-install: Install libpciaccess0
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In "ts-xen-build-prep: install packages for suites >jessie",
libpciaccess-dev was added for the benefit of qemu.  libvirt needs it
too.

We also need the runtime library.  Without it, libvirt does not start:

  2019-04-04 22:35:36.760+0000: 3623: error : virModuleLoadFile:53 : internal error: Failed to load module '/usr/local/lib/libvirt/connection-driver/libvirt_driver_nodedev.so': libpciaccess.so.0: cannot open shared object file: No such file or directory

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-install | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/ts-xen-install b/ts-xen-install
index 03f8c03e..9f78a75f 100755
--- a/ts-xen-install
+++ b/ts-xen-install
@@ -53,7 +53,8 @@ sub packages () {
 			       qemu-utils
                                netcat-openbsd));
     if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
-        target_install_packages($ho, qw(net-tools libnl-route-3-200));
+        target_install_packages($ho, qw(net-tools libnl-route-3-200 
+					libpciaccess0));
     }
     if ($ho->{Suite} =~ m/jessie/) {
         target_install_packages($ho, qw(libnl-route-3-200));
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 53/62] ts-xen-install: Install libpciaccess0
@ 2019-04-10 14:23       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:23 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

In "ts-xen-build-prep: install packages for suites >jessie",
libpciaccess-dev was added for the benefit of qemu.  libvirt needs it
too.

We also need the runtime library.  Without it, libvirt does not start:

  2019-04-04 22:35:36.760+0000: 3623: error : virModuleLoadFile:53 : internal error: Failed to load module '/usr/local/lib/libvirt/connection-driver/libvirt_driver_nodedev.so': libpciaccess.so.0: cannot open shared object file: No such file or directory

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-xen-install | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/ts-xen-install b/ts-xen-install
index 03f8c03e..9f78a75f 100755
--- a/ts-xen-install
+++ b/ts-xen-install
@@ -53,7 +53,8 @@ sub packages () {
 			       qemu-utils
                                netcat-openbsd));
     if ($ho->{Suite} !~ m/squeeze|wheezy|jessie/) {
-        target_install_packages($ho, qw(net-tools libnl-route-3-200));
+        target_install_packages($ho, qw(net-tools libnl-route-3-200 
+					libpciaccess0));
     }
     if ($ho->{Suite} =~ m/jessie/) {
         target_install_packages($ho, qw(libnl-route-3-200));
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 54/62] ts-debian-hvm-install: Honour linux_boot_append target var
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This looks for:
  <guest>_linux_boot_append
  all_guest_linux_boot_append

Nothing sets these yet.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-hvm-install | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ts-debian-hvm-install b/ts-debian-hvm-install
index 54d5d1c2..ed8803ed 100755
--- a/ts-debian-hvm-install
+++ b/ts-debian-hvm-install
@@ -129,6 +129,9 @@ sub gcmdline (;$) {
 					    PreseedScheme => 'file');
     push @dicmdline, $extra if $extra;
 
+    my $append = target_var($gho,'linux_boot_append');
+    push @dicmdline, $append if $append;
+
     push @dicmdline, "--";
     # See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=762007 for
     # why console= is repeated.
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 54/62] ts-debian-hvm-install: Honour linux_boot_append target var
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

This looks for:
  <guest>_linux_boot_append
  all_guest_linux_boot_append

Nothing sets these yet.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-hvm-install | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ts-debian-hvm-install b/ts-debian-hvm-install
index 54d5d1c2..ed8803ed 100755
--- a/ts-debian-hvm-install
+++ b/ts-debian-hvm-install
@@ -129,6 +129,9 @@ sub gcmdline (;$) {
 					    PreseedScheme => 'file');
     push @dicmdline, $extra if $extra;
 
+    my $append = target_var($gho,'linux_boot_append');
+    push @dicmdline, $append if $append;
+
     push @dicmdline, "--";
     # See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=762007 for
     # why console= is repeated.
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Andrew Cooper, Ian Jackson

Since Spectre/Meltdown, shadow has been a lot slower, especially with
KPTI in the guest.  Empirically, too slow (with the kernel from Debian
stretch).

CC: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 make-flight | 1 +
 1 file changed, 1 insertion(+)

diff --git a/make-flight b/make-flight
index 151b1435..1e3ebd5c 100755
--- a/make-flight
+++ b/make-flight
@@ -493,6 +493,7 @@ do_shadow_tests () {
             $debian_runvars all_hostflags=$most_hostflags
 
   do_hvm_debian_test_one debianhvm xl seabios false '' -shadow \
+                         all_guest_linux_boot_append=nopti \
                          "xen_boot_append=hap=false"
 }
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Andrew Cooper, Ian Jackson

Since Spectre/Meltdown, shadow has been a lot slower, especially with
KPTI in the guest.  Empirically, too slow (with the kernel from Debian
stretch).

CC: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 make-flight | 1 +
 1 file changed, 1 insertion(+)

diff --git a/make-flight b/make-flight
index 151b1435..1e3ebd5c 100755
--- a/make-flight
+++ b/make-flight
@@ -493,6 +493,7 @@ do_shadow_tests () {
             $debian_runvars all_hostflags=$most_hostflags
 
   do_hvm_debian_test_one debianhvm xl seabios false '' -shadow \
+                         all_guest_linux_boot_append=nopti \
                          "xen_boot_append=hap=false"
 }
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 56/62] platforms: Pass suite to get_arch_platforms
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

The available platforms may depend on the suite to be used.

For now we use $defsuite from make-flight, which is not entirely right
but it will do for now because we don't use other suites much.

No functional change yet since neither implementation uses it.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/HostDB/Executive.pm | 4 ++--
 Osstest/HostDB/Static.pm    | 4 ++--
 cri-getplatforms            | 2 +-
 make-flight                 | 4 ++--
 4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/Osstest/HostDB/Executive.pm b/Osstest/HostDB/Executive.pm
index d42250f6..bf6ec57d 100644
--- a/Osstest/HostDB/Executive.pm
+++ b/Osstest/HostDB/Executive.pm
@@ -90,8 +90,8 @@ END
     return $flags;
 }
 
-sub get_arch_platforms ($$) {
-    my ($hd, $blessing, $arch) = @_;
+sub get_arch_platforms ($$$) {
+    my ($hd, $blessing, $arch, $suite) = @_;
 
     my @plats = ( );
     my $platsq = $dbh_tests->prepare(<<END);
diff --git a/Osstest/HostDB/Static.pm b/Osstest/HostDB/Static.pm
index ab9542dd..0c6be3ee 100644
--- a/Osstest/HostDB/Static.pm
+++ b/Osstest/HostDB/Static.pm
@@ -72,8 +72,8 @@ sub get_flags ($$) { #method
     return $flags;
 }
 
-sub get_arch_platforms ($$) {
-    my ($hd, $blessing, $arch) = @_;
+sub get_arch_platforms ($$$) {
+    my ($hd, $blessing, $arch, $suite) = @_;
 
     my $prop = "Platforms".ucfirst($arch);
 
diff --git a/cri-getplatforms b/cri-getplatforms
index 2bf13483..2b8cee0b 100755
--- a/cri-getplatforms
+++ b/cri-getplatforms
@@ -20,6 +20,6 @@ getplatforms () {
         perl -e '
                 use Osstest;
                 csreadconfig();
-                print join " ", $mhostdb->get_arch_platforms("'$blessing'", "'$1'") or die $!;
+                print join " ", $mhostdb->get_arch_platforms("'$blessing'", "'$1'", "'$2'") or die $!;
         '
 }
diff --git a/make-flight b/make-flight
index 1e3ebd5c..92dacb35 100755
--- a/make-flight
+++ b/make-flight
@@ -27,9 +27,9 @@ buildflight=$4
 flight=`./cs-flight-create $blessing $branch`
 
 . ./cri-common
-. ./cri-getplatforms
 . ./ap-common
 . ./mfi-common
+. ./cri-getplatforms
 
 # Older versions of Xen may not build with the current default.  Note
 # that branches older than 4.3 might need something even older than
@@ -612,7 +612,7 @@ do_pv_debian_tests () {
 
   for xsm in $xsms ; do
     # Basic PV Linux test with xl
-    for platform in '' `getplatforms $xenarch` ; do
+    for platform in '' `getplatforms $xenarch $defsuite` ; do
 
       # xsm test is not platform specific
       if [ x$xsm = xtrue -a x$platform != x ]; then
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 56/62] platforms: Pass suite to get_arch_platforms
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

The available platforms may depend on the suite to be used.

For now we use $defsuite from make-flight, which is not entirely right
but it will do for now because we don't use other suites much.

No functional change yet since neither implementation uses it.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/HostDB/Executive.pm | 4 ++--
 Osstest/HostDB/Static.pm    | 4 ++--
 cri-getplatforms            | 2 +-
 make-flight                 | 4 ++--
 4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/Osstest/HostDB/Executive.pm b/Osstest/HostDB/Executive.pm
index d42250f6..bf6ec57d 100644
--- a/Osstest/HostDB/Executive.pm
+++ b/Osstest/HostDB/Executive.pm
@@ -90,8 +90,8 @@ END
     return $flags;
 }
 
-sub get_arch_platforms ($$) {
-    my ($hd, $blessing, $arch) = @_;
+sub get_arch_platforms ($$$) {
+    my ($hd, $blessing, $arch, $suite) = @_;
 
     my @plats = ( );
     my $platsq = $dbh_tests->prepare(<<END);
diff --git a/Osstest/HostDB/Static.pm b/Osstest/HostDB/Static.pm
index ab9542dd..0c6be3ee 100644
--- a/Osstest/HostDB/Static.pm
+++ b/Osstest/HostDB/Static.pm
@@ -72,8 +72,8 @@ sub get_flags ($$) { #method
     return $flags;
 }
 
-sub get_arch_platforms ($$) {
-    my ($hd, $blessing, $arch) = @_;
+sub get_arch_platforms ($$$) {
+    my ($hd, $blessing, $arch, $suite) = @_;
 
     my $prop = "Platforms".ucfirst($arch);
 
diff --git a/cri-getplatforms b/cri-getplatforms
index 2bf13483..2b8cee0b 100755
--- a/cri-getplatforms
+++ b/cri-getplatforms
@@ -20,6 +20,6 @@ getplatforms () {
         perl -e '
                 use Osstest;
                 csreadconfig();
-                print join " ", $mhostdb->get_arch_platforms("'$blessing'", "'$1'") or die $!;
+                print join " ", $mhostdb->get_arch_platforms("'$blessing'", "'$1'", "'$2'") or die $!;
         '
 }
diff --git a/make-flight b/make-flight
index 1e3ebd5c..92dacb35 100755
--- a/make-flight
+++ b/make-flight
@@ -27,9 +27,9 @@ buildflight=$4
 flight=`./cs-flight-create $blessing $branch`
 
 . ./cri-common
-. ./cri-getplatforms
 . ./ap-common
 . ./mfi-common
+. ./cri-getplatforms
 
 # Older versions of Xen may not build with the current default.  Note
 # that branches older than 4.3 might need something even older than
@@ -612,7 +612,7 @@ do_pv_debian_tests () {
 
   for xsm in $xsms ; do
     # Basic PV Linux test with xl
-    for platform in '' `getplatforms $xenarch` ; do
+    for platform in '' `getplatforms $xenarch $defsuite` ; do
 
       # xsm test is not platform specific
       if [ x$xsm = xtrue -a x$platform != x ]; then
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 57/62] platforms: Honour suite in get_arch_platforms
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

The available platforms may depend on the suite to be used.

Actually implement that for HostDB::Executive.
For Static, we leave it to the user.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/HostDB/Executive.pm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/Osstest/HostDB/Executive.pm b/Osstest/HostDB/Executive.pm
index bf6ec57d..7ffca6c4 100644
--- a/Osstest/HostDB/Executive.pm
+++ b/Osstest/HostDB/Executive.pm
@@ -99,18 +99,20 @@ SELECT DISTINCT hostflag
            FROM hostflags h0
    WHERE EXISTS (
        SELECT *
-         FROM hostflags h1, hostflags h2, hostflags h3
+         FROM hostflags h1, hostflags h2, hostflags h3, hostflags h4
         WHERE h0.hostname = h1.hostname
           AND h1.hostname = h2.hostname
           AND h2.hostname = h3.hostname
+          AND h3.hostname = h4.hostname
           AND h1.hostflag = ?
           AND h2.hostflag = ?
           AND h3.hostflag = 'purpose-test'
+          AND h4.hostflag = ?
    )
    AND hostflag like 'platform-%';
 END
 
-    $platsq->execute("blessed-$blessing", "arch-$arch");
+    $platsq->execute("blessed-$blessing", "arch-$arch", "suite-$suite");
 
     while (my ($plat) = $platsq->fetchrow_array()) {
 	$plat =~ s/^platform-//g or die;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 57/62] platforms: Honour suite in get_arch_platforms
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

The available platforms may depend on the suite to be used.

Actually implement that for HostDB::Executive.
For Static, we leave it to the user.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/HostDB/Executive.pm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/Osstest/HostDB/Executive.pm b/Osstest/HostDB/Executive.pm
index bf6ec57d..7ffca6c4 100644
--- a/Osstest/HostDB/Executive.pm
+++ b/Osstest/HostDB/Executive.pm
@@ -99,18 +99,20 @@ SELECT DISTINCT hostflag
            FROM hostflags h0
    WHERE EXISTS (
        SELECT *
-         FROM hostflags h1, hostflags h2, hostflags h3
+         FROM hostflags h1, hostflags h2, hostflags h3, hostflags h4
         WHERE h0.hostname = h1.hostname
           AND h1.hostname = h2.hostname
           AND h2.hostname = h3.hostname
+          AND h3.hostname = h4.hostname
           AND h1.hostflag = ?
           AND h2.hostflag = ?
           AND h3.hostflag = 'purpose-test'
+          AND h4.hostflag = ?
    )
    AND hostflag like 'platform-%';
 END
 
-    $platsq->execute("blessed-$blessing", "arch-$arch");
+    $platsq->execute("blessed-$blessing", "arch-$arch", "suite-$suite");
 
     while (my ($plat) = $platsq->fetchrow_array()) {
 	$plat =~ s/^platform-//g or die;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 58/62] dm restrict, fishdescriptor: Update to a fixed chiark-scripts
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

I have only just fixed a bug which stops our test from working
and the fix is not upstream yet.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 production-config | 1 +
 1 file changed, 1 insertion(+)

diff --git a/production-config b/production-config
index 59c74cca..fadfe8b9 100644
--- a/production-config
+++ b/production-config
@@ -106,6 +106,7 @@ MicrocodeUpdateI386 microcode.x86.2015-06-12.cpio
 TftpGrubVersion XXXX-XX-XX
 
 DebianExtraPackages_jessie chiark-scripts_6.0.3~citrix1_all.deb
+DebianExtraPackages_stretch chiark-scripts_6.0.4~citrix1_all.deb
 
 DebianExtraPackages_uefi_i386_jessie   extradebs-uefi-i386-2018-04-01/
 DebianExtraPackages_uefi_amd64_jessie  extradebs-uefi-amd64-2018-04-01/
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 58/62] dm restrict, fishdescriptor: Update to a fixed chiark-scripts
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

I have only just fixed a bug which stops our test from working
and the fix is not upstream yet.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 production-config | 1 +
 1 file changed, 1 insertion(+)

diff --git a/production-config b/production-config
index 59c74cca..fadfe8b9 100644
--- a/production-config
+++ b/production-config
@@ -106,6 +106,7 @@ MicrocodeUpdateI386 microcode.x86.2015-06-12.cpio
 TftpGrubVersion XXXX-XX-XX
 
 DebianExtraPackages_jessie chiark-scripts_6.0.3~citrix1_all.deb
+DebianExtraPackages_stretch chiark-scripts_6.0.4~citrix1_all.deb
 
 DebianExtraPackages_uefi_i386_jessie   extradebs-uefi-i386-2018-04-01/
 DebianExtraPackages_uefi_amd64_jessie  extradebs-uefi-amd64-2018-04-01/
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 59/62] Debian: Fix /lib/udev/ifupdown-hotplug to not run if / is ro
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Empirically, without this, on Debian stretch:

 1. udev starts before / is remounted rw
 2. udev spots eth0 and runs /lib/udev/ifupdown-hotplug
 3. ifupdown-hotplug runs ifup which runs isc-dhcp-client
 4. isc-dhcp-client talks to the dhcp server to get an address
 5. isc-dhcp-client tries to write the lease and run the hook
    scripts but something here fails with EROFS
 6. isc-dhcp-client sends DHCPDECLINE to the server
 7. GOTO 4

This loop continues for several seconds, until / is remounted rw.

None of this is appears in any of the guest's logs because syslog is
not running yet, and none of this stuff goes to the console either.
But it does appear in the dhcp *server* logs so that a conscientious
administrator will suffer consternation and concern.

It is not ever sensible to run /lib/udev/ifupdown-hotplug with /
mounted ro.  (Maybe it is not sensible to run udev so early.)
Skipping it is fine because the boot sequence contains an explicit
call to ifup which occurs *after* / is remounted, and that will
collect any interfaces which were skipped earlier.

In my osstest stretch series development tests I don't think I saw any
actual host install failures due to this situation.  The timeouts are
generous enough not to matter, and of course when we install Xen we
reconfigure the host networking to have a static IP address so then
the problem goes away.

In this patch we do this for the host.  We provide a function to
return the appropriate rune which we will use in a moment.

I have not yet reported this situation to the appropriate Debian
channels.  That's on my backlog.  But in any case I have limited the
workaround to stretch so we will revisit this for buster.

The approach to fixing this is somewhat awkward.

Firstly, since the bug is in /lib/udev/ifupdown-hotplug we want to
edit that script.  But we need to do it in the installer environment
as a late_command, because after first boot, via ssh, is too late.
The installer environment has no `patch'.  I didn't want to just
supply a whole new script.  So instead we use sed and mv.

Secondly, as for the contents of /lib/udev/ifupdown-hotplug: I wasn't
able to think of a convenient shell command which will tell us the
errno value from trying to write a file.  Plenty will print the
strerror but I balked at LC_MESSAGES=C and grep.  Perl, however, can
do this, and is always available on Debian.  So perl it is.

Thirdly, the code has a bad case of toothpicks (lots of \), because it
needs to pass through (i) perl (ii) the shell (iii) sed's regexp
syntax and/or i command.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 9d7d1518..41aa28b0 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -48,6 +48,7 @@ BEGIN {
                       preseed_hook_cmds
                       di_installcmdline_core
                       di_vg_name
+                      debian_dhcp_rofs_fix
                       );
     %EXPORT_TAGS = ( );
 
@@ -931,6 +932,9 @@ END
 set -ex
 END
 
+    preseed_hook_command($ho, 'late_command', $sfx,
+			 debian_dhcp_rofs_fix($ho, '/target'));
+
     my $preseed = <<"END";
 d-i debian-installer/locale string en_GB
 d-i console-keymaps-at/keymap select gb
@@ -1563,4 +1567,22 @@ sub debian_guest_di_version ($) {
     return $gho->{DiVersion};
 }
 
+sub debian_dhcp_rofs_fix ($$) {
+    my ($ho, $rootdir) = @_;
+    # Works around bug where /lib/udev/ifupdown-hotplug runs while
+    # / is still ro.  In stretch, the isc dhcp client spins requesting
+    # an address and then sending a DHCPDECLINE (and then, usually,
+    # eventually works).
+    return '' unless $ho->{Suite} =~ m/stretch/;
+    my $script = "$rootdir/lib/udev/ifupdown-hotplug";
+    <<END.<<'ENDQ'.<<END
+set -ex
+sed -e <'$script' >'$script.new' \\
+END
+'/^if \[ -d \/run\/systemd\/system ]; then/ i perl -e '\''use POSIX; my $f="/var/lib/dhcp/rw-fs-check"; exit 0 if open T, ">", $f; die "quitting: $f: $!\\n" if $!==EROFS; warn "warning: $f: $!\\n"'\'' || exit 0'
+ENDQ
+mv '$script.new' '$script'
+END
+}
+
 1;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 59/62] Debian: Fix /lib/udev/ifupdown-hotplug to not run if / is ro
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Empirically, without this, on Debian stretch:

 1. udev starts before / is remounted rw
 2. udev spots eth0 and runs /lib/udev/ifupdown-hotplug
 3. ifupdown-hotplug runs ifup which runs isc-dhcp-client
 4. isc-dhcp-client talks to the dhcp server to get an address
 5. isc-dhcp-client tries to write the lease and run the hook
    scripts but something here fails with EROFS
 6. isc-dhcp-client sends DHCPDECLINE to the server
 7. GOTO 4

This loop continues for several seconds, until / is remounted rw.

None of this is appears in any of the guest's logs because syslog is
not running yet, and none of this stuff goes to the console either.
But it does appear in the dhcp *server* logs so that a conscientious
administrator will suffer consternation and concern.

It is not ever sensible to run /lib/udev/ifupdown-hotplug with /
mounted ro.  (Maybe it is not sensible to run udev so early.)
Skipping it is fine because the boot sequence contains an explicit
call to ifup which occurs *after* / is remounted, and that will
collect any interfaces which were skipped earlier.

In my osstest stretch series development tests I don't think I saw any
actual host install failures due to this situation.  The timeouts are
generous enough not to matter, and of course when we install Xen we
reconfigure the host networking to have a static IP address so then
the problem goes away.

In this patch we do this for the host.  We provide a function to
return the appropriate rune which we will use in a moment.

I have not yet reported this situation to the appropriate Debian
channels.  That's on my backlog.  But in any case I have limited the
workaround to stretch so we will revisit this for buster.

The approach to fixing this is somewhat awkward.

Firstly, since the bug is in /lib/udev/ifupdown-hotplug we want to
edit that script.  But we need to do it in the installer environment
as a late_command, because after first boot, via ssh, is too late.
The installer environment has no `patch'.  I didn't want to just
supply a whole new script.  So instead we use sed and mv.

Secondly, as for the contents of /lib/udev/ifupdown-hotplug: I wasn't
able to think of a convenient shell command which will tell us the
errno value from trying to write a file.  Plenty will print the
strerror but I balked at LC_MESSAGES=C and grep.  Perl, however, can
do this, and is always available on Debian.  So perl it is.

Thirdly, the code has a bad case of toothpicks (lots of \), because it
needs to pass through (i) perl (ii) the shell (iii) sed's regexp
syntax and/or i command.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest/Debian.pm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 9d7d1518..41aa28b0 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -48,6 +48,7 @@ BEGIN {
                       preseed_hook_cmds
                       di_installcmdline_core
                       di_vg_name
+                      debian_dhcp_rofs_fix
                       );
     %EXPORT_TAGS = ( );
 
@@ -931,6 +932,9 @@ END
 set -ex
 END
 
+    preseed_hook_command($ho, 'late_command', $sfx,
+			 debian_dhcp_rofs_fix($ho, '/target'));
+
     my $preseed = <<"END";
 d-i debian-installer/locale string en_GB
 d-i console-keymaps-at/keymap select gb
@@ -1563,4 +1567,22 @@ sub debian_guest_di_version ($) {
     return $gho->{DiVersion};
 }
 
+sub debian_dhcp_rofs_fix ($$) {
+    my ($ho, $rootdir) = @_;
+    # Works around bug where /lib/udev/ifupdown-hotplug runs while
+    # / is still ro.  In stretch, the isc dhcp client spins requesting
+    # an address and then sending a DHCPDECLINE (and then, usually,
+    # eventually works).
+    return '' unless $ho->{Suite} =~ m/stretch/;
+    my $script = "$rootdir/lib/udev/ifupdown-hotplug";
+    <<END.<<'ENDQ'.<<END
+set -ex
+sed -e <'$script' >'$script.new' \\
+END
+'/^if \[ -d \/run\/systemd\/system ]; then/ i perl -e '\''use POSIX; my $f="/var/lib/dhcp/rw-fs-check"; exit 0 if open T, ">", $f; die "quitting: $f: $!\\n" if $!==EROFS; warn "warning: $f: $!\\n"'\'' || exit 0'
+ENDQ
+mv '$script.new' '$script'
+END
+}
+
 1;
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 60/62] Debian: Fix /lib/udev/ifupdown-hotplug in guests from debootstrap
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

The ifupdown-hotplug problem just described affects guests too.

Empirically, this occurs only with the guests from xen-tools.  In my
osstest stretch series development tests this resulted in occasional
failures of ts-guest-start.  The problem is not deterministic; and it
may be that it is a race between the guest's random dhcp retry and
osstest's timeout, or something.  The race affected both x86 and ARM.

I conjecture that it only affects xen-tools created guests because
those guests use sysvinit.  Presumably the other guests have systemd
which has some different ordering.  I conjecture that the sysvinit
boot arrangements were damaged by some changes made in stretch to
shared components (udev, probably) to support systemd.

An alternative explanation for seeing the failure only with xen-tools
created guests might be that all guests are affected, but only
xen-tools created guests are booted with a short timeout; whereas the
d-i created ones have a long timeout for firstboot at least.  I don't
believe this theory because all guests are restarted with
ts-guest-start and a short timeout.

So: in ts-debian-fixup, execute the sed rune to fix
/lib/udev/ifupdown-hotplug.  This then happens before first boot.

Debian guests installed via d-i are not affected by this patch.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-fixup | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 7d9d0398..fef9836e 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -212,6 +212,8 @@ target_cmd_root($ho, <<END.debian_overlays_fixup_cmd($ho, $mountpoint));
 set -ex
 END
 
+target_cmd_root($ho, debian_dhcp_rofs_fix($ho, $mountpoint));
+
 console();
 filesystems();
 otherfixupcfg();
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 60/62] Debian: Fix /lib/udev/ifupdown-hotplug in guests from debootstrap
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

The ifupdown-hotplug problem just described affects guests too.

Empirically, this occurs only with the guests from xen-tools.  In my
osstest stretch series development tests this resulted in occasional
failures of ts-guest-start.  The problem is not deterministic; and it
may be that it is a race between the guest's random dhcp retry and
osstest's timeout, or something.  The race affected both x86 and ARM.

I conjecture that it only affects xen-tools created guests because
those guests use sysvinit.  Presumably the other guests have systemd
which has some different ordering.  I conjecture that the sysvinit
boot arrangements were damaged by some changes made in stretch to
shared components (udev, probably) to support systemd.

An alternative explanation for seeing the failure only with xen-tools
created guests might be that all guests are affected, but only
xen-tools created guests are booted with a short timeout; whereas the
d-i created ones have a long timeout for firstboot at least.  I don't
believe this theory because all guests are restarted with
ts-guest-start and a short timeout.

So: in ts-debian-fixup, execute the sed rune to fix
/lib/udev/ifupdown-hotplug.  This then happens before first boot.

Debian guests installed via d-i are not affected by this patch.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 ts-debian-fixup | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/ts-debian-fixup b/ts-debian-fixup
index 7d9d0398..fef9836e 100755
--- a/ts-debian-fixup
+++ b/ts-debian-fixup
@@ -212,6 +212,8 @@ target_cmd_root($ho, <<END.debian_overlays_fixup_cmd($ho, $mountpoint));
 set -ex
 END
 
+target_cmd_root($ho, debian_dhcp_rofs_fix($ho, $mountpoint));
+
 console();
 filesystems();
 otherfixupcfg();
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 61/62] production-config-cambridge: Provide TftpDiVersion_stretch
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 production-config-cambridge | 1 +
 1 file changed, 1 insertion(+)

diff --git a/production-config-cambridge b/production-config-cambridge
index ce6239bd..a50b19b3 100644
--- a/production-config-cambridge
+++ b/production-config-cambridge
@@ -77,6 +77,7 @@ TftpNetGrubTemplatesReal Netgrub.cfg/%ether%
 TftpNetbootGroup osstest
 TftpDiVersion_wheezy 2016-06-08
 TftpDiVersion_jessie 2018-06-26
+TftpDiVersion_stretch 2019-04-10
 
 DebianSnapshotBackports_jessie http://snapshot.debian.org/archive/debian/20190206T211314Z/
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 61/62] production-config-cambridge: Provide TftpDiVersion_stretch
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 production-config-cambridge | 1 +
 1 file changed, 1 insertion(+)

diff --git a/production-config-cambridge b/production-config-cambridge
index ce6239bd..a50b19b3 100644
--- a/production-config-cambridge
+++ b/production-config-cambridge
@@ -77,6 +77,7 @@ TftpNetGrubTemplatesReal Netgrub.cfg/%ether%
 TftpNetbootGroup osstest
 TftpDiVersion_wheezy 2016-06-08
 TftpDiVersion_jessie 2018-06-26
+TftpDiVersion_stretch 2019-04-10
 
 DebianSnapshotBackports_jessie http://snapshot.debian.org/archive/debian/20190206T211314Z/
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [OSSTEST PATCH 62/62] Switch to Debian Stretch
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson, Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest.pm        | 2 +-
 production-config | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/Osstest.pm b/Osstest.pm
index 92b1a0ea..7ce53fcb 100644
--- a/Osstest.pm
+++ b/Osstest.pm
@@ -87,7 +87,7 @@ our %c = qw(
 
     Images images
 
-    DebianSuite jessie
+    DebianSuite stretch
     DebianMirrorSubpath debian
 
     TestHostKeypairPath id_rsa_osstest
diff --git a/production-config b/production-config
index fadfe8b9..5b9f5c82 100644
--- a/production-config
+++ b/production-config
@@ -90,12 +90,14 @@ TftpNetbootGroup osstest
 # Update with ./mg-debian-installer-update(-all)
 TftpDiVersion_wheezy 2016-06-08
 TftpDiVersion_jessie 2018-06-26
+TftpDiVersion_stretch 2018-11-27
 
 DebianSnapshotBackports_jessie http://snapshot.debian.org/archive/debian/20190206T211314Z/
 
 # For ISO installs
 DebianImageVersion_wheezy 7.2.0
 DebianImageVersion_jessie 8.2.0
+DebianImageVersion_stretch 9.4.0
 
 # These should normally be the same.
 # Update with ./mg-cpu-microcode-update
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [OSSTEST PATCH 62/62] Switch to Debian Stretch
@ 2019-04-10 14:24       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 14:24 UTC (permalink / raw)
  To: xen-devel; +Cc: Ian Jackson, Wei Liu

From: Wei Liu <wei.liu2@citrix.com>

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
 Osstest.pm        | 2 +-
 production-config | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/Osstest.pm b/Osstest.pm
index 92b1a0ea..7ce53fcb 100644
--- a/Osstest.pm
+++ b/Osstest.pm
@@ -87,7 +87,7 @@ our %c = qw(
 
     Images images
 
-    DebianSuite jessie
+    DebianSuite stretch
     DebianMirrorSubpath debian
 
     TestHostKeypairPath id_rsa_osstest
diff --git a/production-config b/production-config
index fadfe8b9..5b9f5c82 100644
--- a/production-config
+++ b/production-config
@@ -90,12 +90,14 @@ TftpNetbootGroup osstest
 # Update with ./mg-debian-installer-update(-all)
 TftpDiVersion_wheezy 2016-06-08
 TftpDiVersion_jessie 2018-06-26
+TftpDiVersion_stretch 2018-11-27
 
 DebianSnapshotBackports_jessie http://snapshot.debian.org/archive/debian/20190206T211314Z/
 
 # For ISO installs
 DebianImageVersion_wheezy 7.2.0
 DebianImageVersion_jessie 8.2.0
+DebianImageVersion_stretch 9.4.0
 
 # These should normally be the same.
 # Update with ./mg-cpu-microcode-update
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests
@ 2019-04-10 14:33         ` Andrew Cooper
  0 siblings, 0 replies; 151+ messages in thread
From: Andrew Cooper @ 2019-04-10 14:33 UTC (permalink / raw)
  To: Ian Jackson, xen-devel

On 10/04/2019 15:24, Ian Jackson wrote:
> Since Spectre/Meltdown, shadow has been a lot slower, especially with
> KPTI in the guest.  Empirically, too slow (with the kernel from Debian
> stretch).

The speed of shadow pagetables hasn't changed - I don't think we even
touched the shadow code at all for XSA-254.

The problem is the change in guest behaviour as a consequence of needing
KPTI for a Meltdown mitigation.

The guest now flushes its pagetables on every
syscall/interrupt/exception rather than once on a process=>process
context switch, which is why running a guest using KPTI in shadow mode
is boarderline unusable.

The actual change to use nopti looks fine.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests
@ 2019-04-10 14:33         ` Andrew Cooper
  0 siblings, 0 replies; 151+ messages in thread
From: Andrew Cooper @ 2019-04-10 14:33 UTC (permalink / raw)
  To: Ian Jackson, xen-devel

On 10/04/2019 15:24, Ian Jackson wrote:
> Since Spectre/Meltdown, shadow has been a lot slower, especially with
> KPTI in the guest.  Empirically, too slow (with the kernel from Debian
> stretch).

The speed of shadow pagetables hasn't changed - I don't think we even
touched the shadow code at all for XSA-254.

The problem is the change in guest behaviour as a consequence of needing
KPTI for a Meltdown mitigation.

The guest now flushes its pagetables on every
syscall/interrupt/exception rather than once on a process=>process
context switch, which is why running a guest using KPTI in shadow mode
is boarderline unusable.

The actual change to use nopti looks fine.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
  2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
@ 2019-04-10 15:27         ` Thierry Reding
  -1 siblings, 0 replies; 151+ messages in thread
From: Thierry Reding @ 2019-04-10 15:27 UTC (permalink / raw)
  To: Ian Jackson
  Cc: xen-devel, Julien Grall, Stefano Stabellini, Wei Liu, dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 2664 bytes --]

On Wed, Apr 10, 2019 at 03:23:27PM +0100, Ian Jackson wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Empirically, on stretch armhf:
> 
>   drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>   drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
>      pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
> 						  ^
> etc.

This was fixed in v4.18 by this commit:

	commit 2f8a6da866eff746a9f8c7745790f3765baeb589
	Author: Emil Goode <emil.fsw@goode.io>
	Date:   Wed May 16 12:22:04 2018 +0200

	    gpu: host1x: Fix compiler errors by converting to dma_addr_t

	    The compiler is complaining with the following errors:

	    drivers/gpu/host1x/cdma.c:94:48: error:
	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
	            [-Werror=incompatible-pointer-types]

	    drivers/gpu/host1x/cdma.c:113:48: error:
	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
	            [-Werror=incompatible-pointer-types]

	    The expected pointer type of the third argument to dma_alloc_wc() is
	    dma_addr_t but phys_addr_t is passed.

	    Change the phys member of struct push_buffer to be dma_addr_t so that we
	    pass the correct type to dma_alloc_wc().
	    Also check pb->mapped for non-NULL in the destroy function as that is the
	    right way of checking if dma_alloc_wc() was successful.

	    Signed-off-by: Emil Goode <emil.fsw@goode.io>
	    Signed-off-by: Thierry Reding <treding@nvidia.com>

It should be fairly easy to backport this to older releases, though I'm
not sure exactly what made this trigger. This wasn't causing any build
errors for a very long time, since this type mismatch has existed ever
since the driver was merged all the way back in v3.10.

Thierry

> This is blocking the upgrade of the Xen Project CI to Debian stretch
> so disable it for now.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> CC: Julien Grall <julien.grall@arm.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Thierry Reding <thierry.reding@gmail.com>
> CC: dri-devel@lists.freedesktop.org
> ---
>  ts-kernel-build | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/ts-kernel-build b/ts-kernel-build
> index 21b8f78a..0bc443de 100755
> --- a/ts-kernel-build
> +++ b/ts-kernel-build
> @@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
>      *) ;;
>  esac
>  
> +# Disable components that don't build
> +setopt CONFIG_TEGRA_HOST1X n
> +
>  exit 0
>  END
>  }
> -- 
> 2.11.0
> 

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

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

* Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
  2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
  (?)
@ 2019-04-10 15:27       ` Thierry Reding
  -1 siblings, 0 replies; 151+ messages in thread
From: Thierry Reding @ 2019-04-10 15:27 UTC (permalink / raw)
  To: Ian Jackson
  Cc: xen-devel, Julien Grall, Stefano Stabellini, Wei Liu, dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 2664 bytes --]

On Wed, Apr 10, 2019 at 03:23:27PM +0100, Ian Jackson wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Empirically, on stretch armhf:
> 
>   drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>   drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
>      pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
> 						  ^
> etc.

This was fixed in v4.18 by this commit:

	commit 2f8a6da866eff746a9f8c7745790f3765baeb589
	Author: Emil Goode <emil.fsw@goode.io>
	Date:   Wed May 16 12:22:04 2018 +0200

	    gpu: host1x: Fix compiler errors by converting to dma_addr_t

	    The compiler is complaining with the following errors:

	    drivers/gpu/host1x/cdma.c:94:48: error:
	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
	            [-Werror=incompatible-pointer-types]

	    drivers/gpu/host1x/cdma.c:113:48: error:
	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
	            [-Werror=incompatible-pointer-types]

	    The expected pointer type of the third argument to dma_alloc_wc() is
	    dma_addr_t but phys_addr_t is passed.

	    Change the phys member of struct push_buffer to be dma_addr_t so that we
	    pass the correct type to dma_alloc_wc().
	    Also check pb->mapped for non-NULL in the destroy function as that is the
	    right way of checking if dma_alloc_wc() was successful.

	    Signed-off-by: Emil Goode <emil.fsw@goode.io>
	    Signed-off-by: Thierry Reding <treding@nvidia.com>

It should be fairly easy to backport this to older releases, though I'm
not sure exactly what made this trigger. This wasn't causing any build
errors for a very long time, since this type mismatch has existed ever
since the driver was merged all the way back in v3.10.

Thierry

> This is blocking the upgrade of the Xen Project CI to Debian stretch
> so disable it for now.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> CC: Julien Grall <julien.grall@arm.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Thierry Reding <thierry.reding@gmail.com>
> CC: dri-devel@lists.freedesktop.org
> ---
>  ts-kernel-build | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/ts-kernel-build b/ts-kernel-build
> index 21b8f78a..0bc443de 100755
> --- a/ts-kernel-build
> +++ b/ts-kernel-build
> @@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
>      *) ;;
>  esac
>  
> +# Disable components that don't build
> +setopt CONFIG_TEGRA_HOST1X n
> +
>  exit 0
>  END
>  }
> -- 
> 2.11.0
> 

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 157 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-10 15:27         ` Thierry Reding
  0 siblings, 0 replies; 151+ messages in thread
From: Thierry Reding @ 2019-04-10 15:27 UTC (permalink / raw)
  To: Ian Jackson
  Cc: xen-devel, Julien Grall, Stefano Stabellini, Wei Liu, dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 2664 bytes --]

On Wed, Apr 10, 2019 at 03:23:27PM +0100, Ian Jackson wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Empirically, on stretch armhf:
> 
>   drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>   drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
>      pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
> 						  ^
> etc.

This was fixed in v4.18 by this commit:

	commit 2f8a6da866eff746a9f8c7745790f3765baeb589
	Author: Emil Goode <emil.fsw@goode.io>
	Date:   Wed May 16 12:22:04 2018 +0200

	    gpu: host1x: Fix compiler errors by converting to dma_addr_t

	    The compiler is complaining with the following errors:

	    drivers/gpu/host1x/cdma.c:94:48: error:
	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
	            [-Werror=incompatible-pointer-types]

	    drivers/gpu/host1x/cdma.c:113:48: error:
	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
	            [-Werror=incompatible-pointer-types]

	    The expected pointer type of the third argument to dma_alloc_wc() is
	    dma_addr_t but phys_addr_t is passed.

	    Change the phys member of struct push_buffer to be dma_addr_t so that we
	    pass the correct type to dma_alloc_wc().
	    Also check pb->mapped for non-NULL in the destroy function as that is the
	    right way of checking if dma_alloc_wc() was successful.

	    Signed-off-by: Emil Goode <emil.fsw@goode.io>
	    Signed-off-by: Thierry Reding <treding@nvidia.com>

It should be fairly easy to backport this to older releases, though I'm
not sure exactly what made this trigger. This wasn't causing any build
errors for a very long time, since this type mismatch has existed ever
since the driver was merged all the way back in v3.10.

Thierry

> This is blocking the upgrade of the Xen Project CI to Debian stretch
> so disable it for now.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> CC: Julien Grall <julien.grall@arm.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Thierry Reding <thierry.reding@gmail.com>
> CC: dri-devel@lists.freedesktop.org
> ---
>  ts-kernel-build | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/ts-kernel-build b/ts-kernel-build
> index 21b8f78a..0bc443de 100755
> --- a/ts-kernel-build
> +++ b/ts-kernel-build
> @@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
>      *) ;;
>  esac
>  
> +# Disable components that don't build
> +setopt CONFIG_TEGRA_HOST1X n
> +
>  exit 0
>  END
>  }
> -- 
> 2.11.0
> 

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 157 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-10 15:35           ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-10 15:35 UTC (permalink / raw)
  To: Thierry Reding, Ian Jackson
  Cc: xen-devel, Stefano Stabellini, Wei Liu, dri-devel

Hi,

On 10/04/2019 16:27, Thierry Reding wrote:
> On Wed, Apr 10, 2019 at 03:23:27PM +0100, Ian Jackson wrote:
>> From: Wei Liu <wei.liu2@citrix.com>
>>
>> Empirically, on stretch armhf:
>>
>>    drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>>    drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
>>       pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
>> 						  ^
>> etc.
> 
> This was fixed in v4.18 by this commit:
> 
> 	commit 2f8a6da866eff746a9f8c7745790f3765baeb589
> 	Author: Emil Goode <emil.fsw@goode.io>
> 	Date:   Wed May 16 12:22:04 2018 +0200
> 
> 	    gpu: host1x: Fix compiler errors by converting to dma_addr_t
> 
> 	    The compiler is complaining with the following errors:
> 
> 	    drivers/gpu/host1x/cdma.c:94:48: error:
> 	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
> 	            [-Werror=incompatible-pointer-types]
> 
> 	    drivers/gpu/host1x/cdma.c:113:48: error:
> 	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
> 	            [-Werror=incompatible-pointer-types]
> 
> 	    The expected pointer type of the third argument to dma_alloc_wc() is
> 	    dma_addr_t but phys_addr_t is passed.
> 
> 	    Change the phys member of struct push_buffer to be dma_addr_t so that we
> 	    pass the correct type to dma_alloc_wc().
> 	    Also check pb->mapped for non-NULL in the destroy function as that is the
> 	    right way of checking if dma_alloc_wc() was successful.
> 
> 	    Signed-off-by: Emil Goode <emil.fsw@goode.io>
> 	    Signed-off-by: Thierry Reding <treding@nvidia.com>
> 
> It should be fairly easy to backport this to older releases, though I'm
> not sure exactly what made this trigger. This wasn't causing any build
> errors for a very long time, since this type mismatch has existed ever
> since the driver was merged all the way back in v3.10.

Likely no-one ever tried to build this module with CONFIG_XEN=y. Xen requires 
dma_addr_t to be 64-bit regardless the page-tables format selected (e.g short vs 
LPAE).

AFAIK, this is the only case on Arm32 where phys_addr_t and dma_addr_t would 
mismatched.

Ian are we using a different config between Jessie and Stretch?

Cheers,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-10 15:35           ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-10 15:35 UTC (permalink / raw)
  To: Thierry Reding, Ian Jackson
  Cc: xen-devel, Stefano Stabellini, Wei Liu, dri-devel

Hi,

On 10/04/2019 16:27, Thierry Reding wrote:
> On Wed, Apr 10, 2019 at 03:23:27PM +0100, Ian Jackson wrote:
>> From: Wei Liu <wei.liu2@citrix.com>
>>
>> Empirically, on stretch armhf:
>>
>>    drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>>    drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
>>       pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
>> 						  ^
>> etc.
> 
> This was fixed in v4.18 by this commit:
> 
> 	commit 2f8a6da866eff746a9f8c7745790f3765baeb589
> 	Author: Emil Goode <emil.fsw@goode.io>
> 	Date:   Wed May 16 12:22:04 2018 +0200
> 
> 	    gpu: host1x: Fix compiler errors by converting to dma_addr_t
> 
> 	    The compiler is complaining with the following errors:
> 
> 	    drivers/gpu/host1x/cdma.c:94:48: error:
> 	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
> 	            [-Werror=incompatible-pointer-types]
> 
> 	    drivers/gpu/host1x/cdma.c:113:48: error:
> 	            passing argument 3 of ‘dma_alloc_wc’ from incompatible pointer type
> 	            [-Werror=incompatible-pointer-types]
> 
> 	    The expected pointer type of the third argument to dma_alloc_wc() is
> 	    dma_addr_t but phys_addr_t is passed.
> 
> 	    Change the phys member of struct push_buffer to be dma_addr_t so that we
> 	    pass the correct type to dma_alloc_wc().
> 	    Also check pb->mapped for non-NULL in the destroy function as that is the
> 	    right way of checking if dma_alloc_wc() was successful.
> 
> 	    Signed-off-by: Emil Goode <emil.fsw@goode.io>
> 	    Signed-off-by: Thierry Reding <treding@nvidia.com>
> 
> It should be fairly easy to backport this to older releases, though I'm
> not sure exactly what made this trigger. This wasn't causing any build
> errors for a very long time, since this type mismatch has existed ever
> since the driver was merged all the way back in v3.10.

Likely no-one ever tried to build this module with CONFIG_XEN=y. Xen requires 
dma_addr_t to be 64-bit regardless the page-tables format selected (e.g short vs 
LPAE).

AFAIK, this is the only case on Arm32 where phys_addr_t and dma_addr_t would 
mismatched.

Ian are we using a different config between Jessie and Stretch?

Cheers,

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 13/62] Extend workaround `clk_ignore_unused' to stretch
@ 2019-04-10 15:47         ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-10 15:47 UTC (permalink / raw)
  To: Ian Jackson, xen-devel; +Cc: Stefano Stabellini, Wei Liu

Hi,

On 10/04/2019 15:23, Ian Jackson wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> This is https://bugs.xenproject.org/xen/bug/45
Still no resolution for this one :/.

> 
> Without that parameter we lose uart output.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Julien Grall <julien.grall@linaro.org>

Acked-by: Julien Grall <julien.grall@arm.com>

Cheers,

> ---
>   Osstest/Debian.pm | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
> index 82b5fb40..91bffdff 100644
> --- a/Osstest/Debian.pm
> +++ b/Osstest/Debian.pm
> @@ -241,7 +241,7 @@ END
>   	push @xenkopt, $xenkopt;
>   	# http://bugs.xenproject.org/xen/bug/45
>   	push @xenkopt, "clk_ignore_unused"
> -	    if $ho->{Suite} =~ m/wheezy|jessie/;
> +	    if $ho->{Suite} =~ m/wheezy|jessie|stretch/;
>   
>   	$xenkopt = join ' ', @xenkopt;
>   	logm("Dom0 Linux options: $xenkopt");
> 

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 13/62] Extend workaround `clk_ignore_unused' to stretch
@ 2019-04-10 15:47         ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-10 15:47 UTC (permalink / raw)
  To: Ian Jackson, xen-devel; +Cc: Stefano Stabellini, Wei Liu

Hi,

On 10/04/2019 15:23, Ian Jackson wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> This is https://bugs.xenproject.org/xen/bug/45
Still no resolution for this one :/.

> 
> Without that parameter we lose uart output.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Julien Grall <julien.grall@linaro.org>

Acked-by: Julien Grall <julien.grall@arm.com>

Cheers,

> ---
>   Osstest/Debian.pm | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
> index 82b5fb40..91bffdff 100644
> --- a/Osstest/Debian.pm
> +++ b/Osstest/Debian.pm
> @@ -241,7 +241,7 @@ END
>   	push @xenkopt, $xenkopt;
>   	# http://bugs.xenproject.org/xen/bug/45
>   	push @xenkopt, "clk_ignore_unused"
> -	    if $ho->{Suite} =~ m/wheezy|jessie/;
> +	    if $ho->{Suite} =~ m/wheezy|jessie|stretch/;
>   
>   	$xenkopt = join ' ', @xenkopt;
>   	logm("Dom0 Linux options: $xenkopt");
> 

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-10 15:47             ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 15:47 UTC (permalink / raw)
  To: Julien Grall
  Cc: xen-devel, Thierry Reding, Wei Liu, Stefano Stabellini, dri-devel

Julien Grall writes ("Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build"):
> Ian are we using a different config between Jessie and Stretch?

Not very [1], but we *are* using a different compiler (since we just
use the one from the distro).

[1] There are some changes to add some ThunderX drivers, in a patch
that you suggested :-):

+setopt CONFIG_PCI_HOST_THUNDER_PEM=y
+setopt CONFIG_PCI_HOST_THUNDER_ECAM=y
+setopt CONFIG_THUNDER_NIC_PF=m
+setopt CONFIG_THUNDER_NIC_VF=m
+setopt CONFIG_THUNDER_NIC_BGX=m
+setopt CONFIG_THUNDER_NIC_RGX=m
+setopt CONFIG_MDIO_THUNDER=m
+setopt CONFIG_I2C_THUNDERX=m
+setopt CONFIG_SPI_THUNDERX=m

I doubt these are related.

It's nice to know that it's fixed in 4.18.  I don't know how
disruptive it would be to backport it.  I could perhaps make the
config option to disable host1x conditional on the Linux kernel
version but it seems easier to just leave things as they are and take
the workaround out at some point in the distant future when all
kernels we care about have the fix.

Thanks all,
Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-10 15:47             ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 15:47 UTC (permalink / raw)
  To: Julien Grall
  Cc: xen-devel, Thierry Reding, Wei Liu, Stefano Stabellini, dri-devel

Julien Grall writes ("Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build"):
> Ian are we using a different config between Jessie and Stretch?

Not very [1], but we *are* using a different compiler (since we just
use the one from the distro).

[1] There are some changes to add some ThunderX drivers, in a patch
that you suggested :-):

+setopt CONFIG_PCI_HOST_THUNDER_PEM=y
+setopt CONFIG_PCI_HOST_THUNDER_ECAM=y
+setopt CONFIG_THUNDER_NIC_PF=m
+setopt CONFIG_THUNDER_NIC_VF=m
+setopt CONFIG_THUNDER_NIC_BGX=m
+setopt CONFIG_THUNDER_NIC_RGX=m
+setopt CONFIG_MDIO_THUNDER=m
+setopt CONFIG_I2C_THUNDERX=m
+setopt CONFIG_SPI_THUNDERX=m

I doubt these are related.

It's nice to know that it's fixed in 4.18.  I don't know how
disruptive it would be to backport it.  I could perhaps make the
config option to disable host1x conditional on the Linux kernel
version but it seems easier to just leave things as they are and take
the workaround out at some point in the distant future when all
kernels we care about have the fix.

Thanks all,
Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests
@ 2019-04-10 15:59           ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 15:59 UTC (permalink / raw)
  To: Andrew Cooper; +Cc: xen-devel

Andrew Cooper writes ("Re: [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests"):
> On 10/04/2019 15:24, Ian Jackson wrote:
> > Since Spectre/Meltdown, shadow has been a lot slower, especially with
> > KPTI in the guest.  Empirically, too slow (with the kernel from Debian
> > stretch).
> 
> The speed of shadow pagetables hasn't changed - I don't think we even
> touched the shadow code at all for XSA-254.
> 
> The problem is the change in guest behaviour as a consequence of needing
> KPTI for a Meltdown mitigation.
> 
> The guest now flushes its pagetables on every
> syscall/interrupt/exception rather than once on a process=>process
> context switch, which is why running a guest using KPTI in shadow mode
> is boarderline unusable.
> 
> The actual change to use nopti looks fine.

Thanks for the explanation.  Unfortunately for the reasons I've
explained I won't change the commit message because that would involve
rewriting the commit, but it is useful to have this correction in the
archives.

Regards,
Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests
@ 2019-04-10 15:59           ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-10 15:59 UTC (permalink / raw)
  To: Andrew Cooper; +Cc: xen-devel

Andrew Cooper writes ("Re: [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests"):
> On 10/04/2019 15:24, Ian Jackson wrote:
> > Since Spectre/Meltdown, shadow has been a lot slower, especially with
> > KPTI in the guest.  Empirically, too slow (with the kernel from Debian
> > stretch).
> 
> The speed of shadow pagetables hasn't changed - I don't think we even
> touched the shadow code at all for XSA-254.
> 
> The problem is the change in guest behaviour as a consequence of needing
> KPTI for a Meltdown mitigation.
> 
> The guest now flushes its pagetables on every
> syscall/interrupt/exception rather than once on a process=>process
> context switch, which is why running a guest using KPTI in shadow mode
> is boarderline unusable.
> 
> The actual change to use nopti looks fine.

Thanks for the explanation.  Unfortunately for the reasons I've
explained I won't change the commit message because that would involve
rewriting the commit, but it is useful to have this correction in the
archives.

Regards,
Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-11 10:51               ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-11 10:51 UTC (permalink / raw)
  To: Ian Jackson
  Cc: xen-devel, Thierry Reding, Wei Liu, Stefano Stabellini, dri-devel

Hi Ian,

On 4/10/19 4:47 PM, Ian Jackson wrote:
> Julien Grall writes ("Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build"):
>> Ian are we using a different config between Jessie and Stretch?
> 
> Not very [1], but we *are* using a different compiler (since we just
> use the one from the distro).
> 
> [1] There are some changes to add some ThunderX drivers, in a patch
> that you suggested :-):
> 
> +setopt CONFIG_PCI_HOST_THUNDER_PEM=y
> +setopt CONFIG_PCI_HOST_THUNDER_ECAM=y
> +setopt CONFIG_THUNDER_NIC_PF=m
> +setopt CONFIG_THUNDER_NIC_VF=m
> +setopt CONFIG_THUNDER_NIC_BGX=m
> +setopt CONFIG_THUNDER_NIC_RGX=m
> +setopt CONFIG_MDIO_THUNDER=m
> +setopt CONFIG_I2C_THUNDERX=m
> +setopt CONFIG_SPI_THUNDERX=m
> 
> I doubt these are related.

Right, this should not change the selection of the host1x driver. So 
this is mostly like due to the compiler change.

> 
> It's nice to know that it's fixed in 4.18.  I don't know how
> disruptive it would be to backport it.  I could perhaps make the
> config option to disable host1x conditional on the Linux kernel
> version but it seems easier to just leave things as they are and take
> the workaround out at some point in the distant future when all
> kernels we care about have the fix.

I agree that this is the most sensible approach for now.

Looking at [1], I guess we would need to request backport up to 3.18?

Cheers,

[1] 
http://logs.test-lab.xenproject.org/osstest/results/all-branch-statuses.txt

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-11 10:51               ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-11 10:51 UTC (permalink / raw)
  To: Ian Jackson
  Cc: xen-devel, Thierry Reding, Wei Liu, Stefano Stabellini, dri-devel

Hi Ian,

On 4/10/19 4:47 PM, Ian Jackson wrote:
> Julien Grall writes ("Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build"):
>> Ian are we using a different config between Jessie and Stretch?
> 
> Not very [1], but we *are* using a different compiler (since we just
> use the one from the distro).
> 
> [1] There are some changes to add some ThunderX drivers, in a patch
> that you suggested :-):
> 
> +setopt CONFIG_PCI_HOST_THUNDER_PEM=y
> +setopt CONFIG_PCI_HOST_THUNDER_ECAM=y
> +setopt CONFIG_THUNDER_NIC_PF=m
> +setopt CONFIG_THUNDER_NIC_VF=m
> +setopt CONFIG_THUNDER_NIC_BGX=m
> +setopt CONFIG_THUNDER_NIC_RGX=m
> +setopt CONFIG_MDIO_THUNDER=m
> +setopt CONFIG_I2C_THUNDERX=m
> +setopt CONFIG_SPI_THUNDERX=m
> 
> I doubt these are related.

Right, this should not change the selection of the host1x driver. So 
this is mostly like due to the compiler change.

> 
> It's nice to know that it's fixed in 4.18.  I don't know how
> disruptive it would be to backport it.  I could perhaps make the
> config option to disable host1x conditional on the Linux kernel
> version but it seems easier to just leave things as they are and take
> the workaround out at some point in the distant future when all
> kernels we care about have the fix.

I agree that this is the most sensible approach for now.

Looking at [1], I guess we would need to request backport up to 3.18?

Cheers,

[1] 
http://logs.test-lab.xenproject.org/osstest/results/all-branch-statuses.txt

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-11 10:56         ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-11 10:56 UTC (permalink / raw)
  To: Ian Jackson, xen-devel
  Cc: Thierry Reding, Stefano Stabellini, Wei Liu, dri-devel

Hi,

On 4/10/19 3:23 PM, Ian Jackson wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Empirically, on stretch armhf:
> 
>    drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>    drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
>       pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
> 						  ^
> etc.
> 
> This is blocking the upgrade of the Xen Project CI to Debian stretch
> so disable it for now.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> CC: Julien Grall <julien.grall@arm.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Thierry Reding <thierry.reding@gmail.com>
> CC: dri-devel@lists.freedesktop.org

Acked-by: Julien Grall <julien.grall@arm.com>

Cheers,

> ---
>   ts-kernel-build | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/ts-kernel-build b/ts-kernel-build
> index 21b8f78a..0bc443de 100755
> --- a/ts-kernel-build
> +++ b/ts-kernel-build
> @@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
>       *) ;;
>   esac
>   
> +# Disable components that don't build
> +setopt CONFIG_TEGRA_HOST1X n
> +
>   exit 0
>   END
>   }
> 

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build
@ 2019-04-11 10:56         ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-11 10:56 UTC (permalink / raw)
  To: Ian Jackson, xen-devel
  Cc: Thierry Reding, Stefano Stabellini, Wei Liu, dri-devel

Hi,

On 4/10/19 3:23 PM, Ian Jackson wrote:
> From: Wei Liu <wei.liu2@citrix.com>
> 
> Empirically, on stretch armhf:
> 
>    drivers/gpu/host1x/cdma.c: In function `host1x_pushbuffer_init':
>    drivers/gpu/host1x/cdma.c:94:48: error: passing argument 3 of `dma_alloc_wc' from incompatible pointer type [-Werror=incompatible-pointer-types]
>       pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys,
> 						  ^
> etc.
> 
> This is blocking the upgrade of the Xen Project CI to Debian stretch
> so disable it for now.
> 
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> CC: Julien Grall <julien.grall@arm.com>
> CC: Stefano Stabellini <sstabellini@kernel.org>
> CC: Thierry Reding <thierry.reding@gmail.com>
> CC: dri-devel@lists.freedesktop.org

Acked-by: Julien Grall <julien.grall@arm.com>

Cheers,

> ---
>   ts-kernel-build | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/ts-kernel-build b/ts-kernel-build
> index 21b8f78a..0bc443de 100755
> --- a/ts-kernel-build
> +++ b/ts-kernel-build
> @@ -594,6 +594,9 @@ case ${XEN_TARGET_ARCH} in
>       *) ;;
>   esac
>   
> +# Disable components that don't build
> +setopt CONFIG_TEGRA_HOST1X n
> +
>   exit 0
>   END
>   }
> 

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [linux-arm-xen test] 134708: regressions - all pass
@ 2019-04-15 18:28 ` osstest service owner
  0 siblings, 0 replies; 151+ messages in thread
From: osstest service owner @ 2019-04-15 18:28 UTC (permalink / raw)
  To: xen-devel, osstest-admin

flight 134708 linux-arm-xen real [real]
http://logs.test-lab.xenproject.org/osstest/logs/134708/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     14 saverestore-support-check    fail  like 119195
 test-arm64-arm64-xl-xsm      13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      14 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     13 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-rtds     13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-rtds     14 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 13 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-multivcpu 13 migrate-support-check        fail  never pass
 test-arm64-arm64-xl-multivcpu 14 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-qcow2 12 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 13 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-rtds     13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     14 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  14 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 13 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 14 saverestore-support-check    fail never pass
 test-armhf-armhf-xl          13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          14 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 13 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 14 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit1  13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  14 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     13 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 12 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 13 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      13 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                e64ac26749dc2c0f390caccd04274608ab31c8cf
baseline version:
 linux                50484ee133c2219a26fd98b39770187221b5e0bc

Last test of basis   119195  2018-02-14 15:21:44 Z  425 days
Testing same since   134708  2019-04-12 16:43:22 Z    3 days    1 attempts

------------------------------------------------------------
2867 people touched revisions under test,
not listing them all

jobs:
 build-arm64-xsm                                              pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-arm64-arm64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-arm64-arm64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 260579 lines long.)

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass
@ 2019-04-15 18:28 ` osstest service owner
  0 siblings, 0 replies; 151+ messages in thread
From: osstest service owner @ 2019-04-15 18:28 UTC (permalink / raw)
  To: xen-devel, osstest-admin

flight 134708 linux-arm-xen real [real]
http://logs.test-lab.xenproject.org/osstest/logs/134708/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195

Tests which did not succeed, but are not blocking:
 test-armhf-armhf-libvirt     14 saverestore-support-check    fail  like 119195
 test-arm64-arm64-xl-xsm      13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-xsm      14 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt     13 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt     14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit1  13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit1  14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-credit2  13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-credit2  14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-rtds     13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl-rtds     14 saverestore-support-check    fail   never pass
 test-arm64-arm64-libvirt-xsm 13 migrate-support-check        fail   never pass
 test-arm64-arm64-libvirt-xsm 14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl          13 migrate-support-check        fail   never pass
 test-arm64-arm64-xl          14 saverestore-support-check    fail   never pass
 test-arm64-arm64-xl-multivcpu 13 migrate-support-check        fail  never pass
 test-arm64-arm64-xl-multivcpu 14 saverestore-support-check    fail  never pass
 test-arm64-arm64-libvirt-qcow2 12 migrate-support-check        fail never pass
 test-arm64-arm64-libvirt-qcow2 13 saverestore-support-check    fail never pass
 test-armhf-armhf-xl-rtds     13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-rtds     14 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-credit2  13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit2  14 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-cubietruck 13 migrate-support-check        fail never pass
 test-armhf-armhf-xl-cubietruck 14 saverestore-support-check    fail never pass
 test-armhf-armhf-xl          13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl          14 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-multivcpu 13 migrate-support-check        fail  never pass
 test-armhf-armhf-xl-multivcpu 14 saverestore-support-check    fail  never pass
 test-armhf-armhf-xl-credit1  13 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-credit1  14 saverestore-support-check    fail   never pass
 test-armhf-armhf-libvirt     13 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 12 migrate-support-check        fail   never pass
 test-armhf-armhf-libvirt-raw 13 saverestore-support-check    fail   never pass
 test-armhf-armhf-xl-vhd      12 migrate-support-check        fail   never pass
 test-armhf-armhf-xl-vhd      13 saverestore-support-check    fail   never pass

version targeted for testing:
 linux                e64ac26749dc2c0f390caccd04274608ab31c8cf
baseline version:
 linux                50484ee133c2219a26fd98b39770187221b5e0bc

Last test of basis   119195  2018-02-14 15:21:44 Z  425 days
Testing same since   134708  2019-04-12 16:43:22 Z    3 days    1 attempts

------------------------------------------------------------
2867 people touched revisions under test,
not listing them all

jobs:
 build-arm64-xsm                                              pass    
 build-arm64                                                  pass    
 build-armhf                                                  pass    
 build-arm64-libvirt                                          pass    
 build-armhf-libvirt                                          pass    
 build-arm64-pvops                                            pass    
 build-armhf-pvops                                            pass    
 test-arm64-arm64-xl                                          pass    
 test-armhf-armhf-xl                                          pass    
 test-arm64-arm64-libvirt-xsm                                 pass    
 test-arm64-arm64-xl-xsm                                      pass    
 test-arm64-arm64-xl-credit1                                  pass    
 test-armhf-armhf-xl-credit1                                  pass    
 test-arm64-arm64-xl-credit2                                  pass    
 test-armhf-armhf-xl-credit2                                  pass    
 test-armhf-armhf-xl-cubietruck                               pass    
 test-arm64-arm64-examine                                     pass    
 test-armhf-armhf-examine                                     pass    
 test-arm64-arm64-libvirt                                     pass    
 test-armhf-armhf-libvirt                                     pass    
 test-arm64-arm64-xl-multivcpu                                pass    
 test-armhf-armhf-xl-multivcpu                                pass    
 test-arm64-arm64-libvirt-qcow2                               pass    
 test-armhf-armhf-libvirt-raw                                 pass    
 test-arm64-arm64-xl-rtds                                     pass    
 test-armhf-armhf-xl-rtds                                     pass    
 test-armhf-armhf-xl-vhd                                      pass    


------------------------------------------------------------
sg-report-flight on osstest.test-lab.xenproject.org
logs: /home/logs/logs
images: /home/logs/images

Logs, config files, etc. are available at
    http://logs.test-lab.xenproject.org/osstest/logs

Explanation of these reports, and of osstest in general, is at
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
    http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master

Test harness code can be found at
    http://xenbits.xen.org/gitweb?p=osstest.git;a=summary


Not pushing.

(No revision log; it would be 260579 lines long.)

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [linux-arm-xen test] 134708: regressions - all pass
@ 2019-04-15 20:34   ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-15 20:34 UTC (permalink / raw)
  To: osstest service owner, xen-devel, Ian Jackson, Wei Liu

Hi,

On 4/15/19 7:28 PM, osstest service owner wrote:
> flight 134708 linux-arm-xen real [real]
> http://logs.test-lab.xenproject.org/osstest/logs/134708/
> 
> Regressions :-(
> 
> Tests which did not succeed and are blocking,
> including tests which could not be run:
>   test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195

I am a bit confused with the failure here [1]:

2019-04-13 22:36:55 Z ---------- substep 11 examine-serial/bootloader fail ---------- 

IIUC, we are looking for "osstest cookie". However this does not seem to
appear on rochester0's logs. Any insights how "osstest cookie" will be output?

> 
> Tests which did not succeed, but are not blocking:
>   test-armhf-armhf-libvirt     14 saverestore-support-check    fail  like 119195
>   test-arm64-arm64-xl-xsm      13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-xsm      14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-libvirt     13 migrate-support-check        fail   never pass
>   test-arm64-arm64-libvirt     14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-credit1  13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-credit1  14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-credit2  13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-credit2  14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-rtds     13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-rtds     14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-libvirt-xsm 13 migrate-support-check        fail   never pass
>   test-arm64-arm64-libvirt-xsm 14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl          13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl          14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-multivcpu 13 migrate-support-check        fail  never pass
>   test-arm64-arm64-xl-multivcpu 14 saverestore-support-check    fail  never pass
>   test-arm64-arm64-libvirt-qcow2 12 migrate-support-check        fail never pass
>   test-arm64-arm64-libvirt-qcow2 13 saverestore-support-check    fail never pass
>   test-armhf-armhf-xl-rtds     13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-rtds     14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-credit2  13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-credit2  14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-cubietruck 13 migrate-support-check        fail never pass
>   test-armhf-armhf-xl-cubietruck 14 saverestore-support-check    fail never pass
>   test-armhf-armhf-xl          13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl          14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-multivcpu 13 migrate-support-check        fail  never pass
>   test-armhf-armhf-xl-multivcpu 14 saverestore-support-check    fail  never pass
>   test-armhf-armhf-xl-credit1  13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-credit1  14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-libvirt     13 migrate-support-check        fail   never pass
>   test-armhf-armhf-libvirt-raw 12 migrate-support-check        fail   never pass
>   test-armhf-armhf-libvirt-raw 13 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-vhd      12 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-vhd      13 saverestore-support-check    fail   never pass
> 
> version targeted for testing:
>   linux                e64ac26749dc2c0f390caccd04274608ab31c8cf
> baseline version:
>   linux                50484ee133c2219a26fd98b39770187221b5e0bc
> 
> Last test of basis   119195  2018-02-14 15:21:44 Z  425 days
> Testing same since   134708  2019-04-12 16:43:22 Z    3 days    1 attempts
> 
> ------------------------------------------------------------
> 2867 people touched revisions under test,
> not listing them all
> 
> jobs:
>   build-arm64-xsm                                              pass
>   build-arm64                                                  pass
>   build-armhf                                                  pass
>   build-arm64-libvirt                                          pass
>   build-armhf-libvirt                                          pass
>   build-arm64-pvops                                            pass
>   build-armhf-pvops                                            pass
>   test-arm64-arm64-xl                                          pass
>   test-armhf-armhf-xl                                          pass
>   test-arm64-arm64-libvirt-xsm                                 pass
>   test-arm64-arm64-xl-xsm                                      pass
>   test-arm64-arm64-xl-credit1                                  pass
>   test-armhf-armhf-xl-credit1                                  pass
>   test-arm64-arm64-xl-credit2                                  pass
>   test-armhf-armhf-xl-credit2                                  pass
>   test-armhf-armhf-xl-cubietruck                               pass
>   test-arm64-arm64-examine                                     pass
>   test-armhf-armhf-examine                                     pass
>   test-arm64-arm64-libvirt                                     pass
>   test-armhf-armhf-libvirt                                     pass
>   test-arm64-arm64-xl-multivcpu                                pass
>   test-armhf-armhf-xl-multivcpu                                pass
>   test-arm64-arm64-libvirt-qcow2                               pass
>   test-armhf-armhf-libvirt-raw                                 pass
>   test-arm64-arm64-xl-rtds                                     pass
>   test-armhf-armhf-xl-rtds                                     pass
>   test-armhf-armhf-xl-vhd                                      pass
> 
> 
> ------------------------------------------------------------
> sg-report-flight on osstest.test-lab.xenproject.org
> logs: /home/logs/logs
> images: /home/logs/images
> 
> Logs, config files, etc. are available at
>      http://logs.test-lab.xenproject.org/osstest/logs
> 
> Explanation of these reports, and of osstest in general, is at
>      http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
>      http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master
> 
> Test harness code can be found at
>      http://xenbits.xen.org/gitweb?p=osstest.git;a=summary
> 
> 
> Not pushing.
> 
> (No revision log; it would be 260579 lines long.)

Cheers,

[1] http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/10.ts-examine-serial-post.log

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass
@ 2019-04-15 20:34   ` Julien Grall
  0 siblings, 0 replies; 151+ messages in thread
From: Julien Grall @ 2019-04-15 20:34 UTC (permalink / raw)
  To: osstest service owner, xen-devel, Ian Jackson, Wei Liu

Hi,

On 4/15/19 7:28 PM, osstest service owner wrote:
> flight 134708 linux-arm-xen real [real]
> http://logs.test-lab.xenproject.org/osstest/logs/134708/
> 
> Regressions :-(
> 
> Tests which did not succeed and are blocking,
> including tests which could not be run:
>   test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195

I am a bit confused with the failure here [1]:

2019-04-13 22:36:55 Z ---------- substep 11 examine-serial/bootloader fail ---------- 

IIUC, we are looking for "osstest cookie". However this does not seem to
appear on rochester0's logs. Any insights how "osstest cookie" will be output?

> 
> Tests which did not succeed, but are not blocking:
>   test-armhf-armhf-libvirt     14 saverestore-support-check    fail  like 119195
>   test-arm64-arm64-xl-xsm      13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-xsm      14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-libvirt     13 migrate-support-check        fail   never pass
>   test-arm64-arm64-libvirt     14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-credit1  13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-credit1  14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-credit2  13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-credit2  14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-rtds     13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl-rtds     14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-libvirt-xsm 13 migrate-support-check        fail   never pass
>   test-arm64-arm64-libvirt-xsm 14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl          13 migrate-support-check        fail   never pass
>   test-arm64-arm64-xl          14 saverestore-support-check    fail   never pass
>   test-arm64-arm64-xl-multivcpu 13 migrate-support-check        fail  never pass
>   test-arm64-arm64-xl-multivcpu 14 saverestore-support-check    fail  never pass
>   test-arm64-arm64-libvirt-qcow2 12 migrate-support-check        fail never pass
>   test-arm64-arm64-libvirt-qcow2 13 saverestore-support-check    fail never pass
>   test-armhf-armhf-xl-rtds     13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-rtds     14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-credit2  13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-credit2  14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-cubietruck 13 migrate-support-check        fail never pass
>   test-armhf-armhf-xl-cubietruck 14 saverestore-support-check    fail never pass
>   test-armhf-armhf-xl          13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl          14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-multivcpu 13 migrate-support-check        fail  never pass
>   test-armhf-armhf-xl-multivcpu 14 saverestore-support-check    fail  never pass
>   test-armhf-armhf-xl-credit1  13 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-credit1  14 saverestore-support-check    fail   never pass
>   test-armhf-armhf-libvirt     13 migrate-support-check        fail   never pass
>   test-armhf-armhf-libvirt-raw 12 migrate-support-check        fail   never pass
>   test-armhf-armhf-libvirt-raw 13 saverestore-support-check    fail   never pass
>   test-armhf-armhf-xl-vhd      12 migrate-support-check        fail   never pass
>   test-armhf-armhf-xl-vhd      13 saverestore-support-check    fail   never pass
> 
> version targeted for testing:
>   linux                e64ac26749dc2c0f390caccd04274608ab31c8cf
> baseline version:
>   linux                50484ee133c2219a26fd98b39770187221b5e0bc
> 
> Last test of basis   119195  2018-02-14 15:21:44 Z  425 days
> Testing same since   134708  2019-04-12 16:43:22 Z    3 days    1 attempts
> 
> ------------------------------------------------------------
> 2867 people touched revisions under test,
> not listing them all
> 
> jobs:
>   build-arm64-xsm                                              pass
>   build-arm64                                                  pass
>   build-armhf                                                  pass
>   build-arm64-libvirt                                          pass
>   build-armhf-libvirt                                          pass
>   build-arm64-pvops                                            pass
>   build-armhf-pvops                                            pass
>   test-arm64-arm64-xl                                          pass
>   test-armhf-armhf-xl                                          pass
>   test-arm64-arm64-libvirt-xsm                                 pass
>   test-arm64-arm64-xl-xsm                                      pass
>   test-arm64-arm64-xl-credit1                                  pass
>   test-armhf-armhf-xl-credit1                                  pass
>   test-arm64-arm64-xl-credit2                                  pass
>   test-armhf-armhf-xl-credit2                                  pass
>   test-armhf-armhf-xl-cubietruck                               pass
>   test-arm64-arm64-examine                                     pass
>   test-armhf-armhf-examine                                     pass
>   test-arm64-arm64-libvirt                                     pass
>   test-armhf-armhf-libvirt                                     pass
>   test-arm64-arm64-xl-multivcpu                                pass
>   test-armhf-armhf-xl-multivcpu                                pass
>   test-arm64-arm64-libvirt-qcow2                               pass
>   test-armhf-armhf-libvirt-raw                                 pass
>   test-arm64-arm64-xl-rtds                                     pass
>   test-armhf-armhf-xl-rtds                                     pass
>   test-armhf-armhf-xl-vhd                                      pass
> 
> 
> ------------------------------------------------------------
> sg-report-flight on osstest.test-lab.xenproject.org
> logs: /home/logs/logs
> images: /home/logs/images
> 
> Logs, config files, etc. are available at
>      http://logs.test-lab.xenproject.org/osstest/logs
> 
> Explanation of these reports, and of osstest in general, is at
>      http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master
>      http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master
> 
> Test harness code can be found at
>      http://xenbits.xen.org/gitweb?p=osstest.git;a=summary
> 
> 
> Not pushing.
> 
> (No revision log; it would be 260579 lines long.)

Cheers,

[1] http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/10.ts-examine-serial-post.log

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [linux-arm-xen test] 134708: regressions - all pass
@ 2019-04-16 10:11       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-16 10:11 UTC (permalink / raw)
  To: Julien Grall; +Cc: xen-devel

Julien Grall writes ("Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass"):
> On 4/15/19 7:28 PM, osstest service owner wrote:
> > flight 134708 linux-arm-xen real [real]
> > http://logs.test-lab.xenproject.org/osstest/logs/134708/
...
> >   test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195
> 
> I am a bit confused with the failure here [1]:
> 
> 2019-04-13 22:36:55 Z ---------- substep 11 examine-serial/bootloader fail ---------- 
> 
> IIUC, we are looking for "osstest cookie". However this does not seem to
> appear on rochester0's logs. Any insights how "osstest cookie" will be output?

Hi.  Yes, this is an issue I already discovered...

Ian Jackson writes ("[OSSTEST PATCH 00/62] Update to Debian stable (stretch)"):
> There seem to be a number of outstanding problems which I decided were
> not blockers:
...
>  * The serial output from the new rochester arm64 machines is missing
>    some of the grub bootloader messages (and this is detected by one
>    of the examine jobs).  I may need help from someone familiar with
>    these machines' hardware/firmware.

I decided that this issue was not serious enough to be a blocker.  It
may need some force pushes, especially if we can't fix it soon,
because osstest will try this test, in other flights, on the
rochesters, where it fails, and that looks like a regression.

In particular, this is not a regression in the linux-arm-xen branch.
So we could force push it.


As for the bug:

This check is checking that the osstest serial log captures the output
from the bootloader.  This can be quite important for debugging,
especially to distinguish hardware or configuration problems from
software problems.  Seeing the bootloader output also provides
a useful reference point to people unfamiliar with osstest.

This check is primarily a test on osstest itself; it is also part of
machine commissioning.  The test works by putting a magic string in
the bootloader output.

Compare the failure above
  http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/info.html
with this one which ran on laxton1:
  http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/info.html

If you look at the final grub config
  http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/laxton1--grub.cfg.new
you can see things like this
  menuentry 'osstest cookie 0b4b9311157321d55cca9d25ff49159d Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-a8e4e9c6-4829-402b-93aa-964f9cf39c41' {

In
  http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/serial-laxton1.log
near Apr 11 17:07:07.787491, you can see the osstest cookie coming
out in the serial representation, in amongst the cursor positioning
codes.

In
  http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/serial-rochester0.log
near Apr 13 22:34:32.442724 you see a banner from grub and then a
bunch of "invalid utf-8 sequence: \304", and at the end some actual
messages from grub.  But the meat of the menu, including the cookie,
is missing.

So the osstest considers the test a failure: the thing it arranged to
appear in the bootloader output was not visible in the serial log.


I have not yet investigated this beyond making these observations.  It
is possible that there is a disagreement over character encoding or
something, and what is happening is that line drawing characters are
being misinterpreted by sympathy.  It might be a firmware bug or a
grub bug or a sympathy bug or a hardware design issue.  I think the
next steps would be to determine exactly what sequence of bytes are
being sent by the host, and to investigate its BIOS options for
controlling serial terminal output.


HTH.

Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass
@ 2019-04-16 10:11       ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-04-16 10:11 UTC (permalink / raw)
  To: Julien Grall; +Cc: xen-devel

Julien Grall writes ("Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass"):
> On 4/15/19 7:28 PM, osstest service owner wrote:
> > flight 134708 linux-arm-xen real [real]
> > http://logs.test-lab.xenproject.org/osstest/logs/134708/
...
> >   test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195
> 
> I am a bit confused with the failure here [1]:
> 
> 2019-04-13 22:36:55 Z ---------- substep 11 examine-serial/bootloader fail ---------- 
> 
> IIUC, we are looking for "osstest cookie". However this does not seem to
> appear on rochester0's logs. Any insights how "osstest cookie" will be output?

Hi.  Yes, this is an issue I already discovered...

Ian Jackson writes ("[OSSTEST PATCH 00/62] Update to Debian stable (stretch)"):
> There seem to be a number of outstanding problems which I decided were
> not blockers:
...
>  * The serial output from the new rochester arm64 machines is missing
>    some of the grub bootloader messages (and this is detected by one
>    of the examine jobs).  I may need help from someone familiar with
>    these machines' hardware/firmware.

I decided that this issue was not serious enough to be a blocker.  It
may need some force pushes, especially if we can't fix it soon,
because osstest will try this test, in other flights, on the
rochesters, where it fails, and that looks like a regression.

In particular, this is not a regression in the linux-arm-xen branch.
So we could force push it.


As for the bug:

This check is checking that the osstest serial log captures the output
from the bootloader.  This can be quite important for debugging,
especially to distinguish hardware or configuration problems from
software problems.  Seeing the bootloader output also provides
a useful reference point to people unfamiliar with osstest.

This check is primarily a test on osstest itself; it is also part of
machine commissioning.  The test works by putting a magic string in
the bootloader output.

Compare the failure above
  http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/info.html
with this one which ran on laxton1:
  http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/info.html

If you look at the final grub config
  http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/laxton1--grub.cfg.new
you can see things like this
  menuentry 'osstest cookie 0b4b9311157321d55cca9d25ff49159d Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-a8e4e9c6-4829-402b-93aa-964f9cf39c41' {

In
  http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/serial-laxton1.log
near Apr 11 17:07:07.787491, you can see the osstest cookie coming
out in the serial representation, in amongst the cursor positioning
codes.

In
  http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/serial-rochester0.log
near Apr 13 22:34:32.442724 you see a banner from grub and then a
bunch of "invalid utf-8 sequence: \304", and at the end some actual
messages from grub.  But the meat of the menu, including the cookie,
is missing.

So the osstest considers the test a failure: the thing it arranged to
appear in the bootloader output was not visible in the serial log.


I have not yet investigated this beyond making these observations.  It
is possible that there is a disagreement over character encoding or
something, and what is happening is that line drawing characters are
being misinterpreted by sympathy.  It might be a firmware bug or a
grub bug or a sympathy bug or a hardware design issue.  I think the
next steps would be to determine exactly what sequence of bytes are
being sent by the host, and to investigate its BIOS options for
controlling serial terminal output.


HTH.

Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* rochester (Thunder-X) bootloader lost output issue
@ 2019-05-01 10:10         ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-05-01 10:10 UTC (permalink / raw)
  To: Julien Grall, Stefano Stabellini; +Cc: xen-devel

Hi.  A couple of weeks ago I wrote a writeup about this kind of
problem:

 test-arm64-arm64-examine 11 examine-serial/bootloader fail REGR. vs. 119195

This is going to affect all of osstest's branches and it will be
tiresome to force push it.  Particularly, I think it may cause the
examine jobs to become stuck on the rochesters and (even worse) if it
doesn't it will pass by accident requiring another force push.

I would like to either fix this, or write a programmatic workaround.
Would someone from the Xen ARM community be willing to debug this any
time soon ?

Failing that I will probably make a hostflag that causes this test to
be skipped, or something.

(Bottom-quoting my previous writeup for context.)

Thanks,
Ian.

Ian Jackson writes ("Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass"):
> Julien Grall writes ("Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass"):
> > On 4/15/19 7:28 PM, osstest service owner wrote:
> > > flight 134708 linux-arm-xen real [real]
> > > http://logs.test-lab.xenproject.org/osstest/logs/134708/
> ...
> > >   test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195
> > 
> > I am a bit confused with the failure here [1]:
> > 
> > 2019-04-13 22:36:55 Z ---------- substep 11 examine-serial/bootloader fail ---------- 
> > 
> > IIUC, we are looking for "osstest cookie". However this does not seem to
> > appear on rochester0's logs. Any insights how "osstest cookie" will be output?
> 
> Hi.  Yes, this is an issue I already discovered...
> 
> Ian Jackson writes ("[OSSTEST PATCH 00/62] Update to Debian stable (stretch)"):
> > There seem to be a number of outstanding problems which I decided were
> > not blockers:
> ...
> >  * The serial output from the new rochester arm64 machines is missing
> >    some of the grub bootloader messages (and this is detected by one
> >    of the examine jobs).  I may need help from someone familiar with
> >    these machines' hardware/firmware.
> 
> I decided that this issue was not serious enough to be a blocker.  It
> may need some force pushes, especially if we can't fix it soon,
> because osstest will try this test, in other flights, on the
> rochesters, where it fails, and that looks like a regression.
> 
> In particular, this is not a regression in the linux-arm-xen branch.
> So we could force push it.
> 
> 
> As for the bug:
> 
> This check is checking that the osstest serial log captures the output
> from the bootloader.  This can be quite important for debugging,
> especially to distinguish hardware or configuration problems from
> software problems.  Seeing the bootloader output also provides
> a useful reference point to people unfamiliar with osstest.
> 
> This check is primarily a test on osstest itself; it is also part of
> machine commissioning.  The test works by putting a magic string in
> the bootloader output.
> 
> Compare the failure above
>   http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/info.html
> with this one which ran on laxton1:
>   http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/info.html
> 
> If you look at the final grub config
>   http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/laxton1--grub.cfg.new
> you can see things like this
>   menuentry 'osstest cookie 0b4b9311157321d55cca9d25ff49159d Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-a8e4e9c6-4829-402b-93aa-964f9cf39c41' {
> 
> In
>   http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/serial-laxton1.log
> near Apr 11 17:07:07.787491, you can see the osstest cookie coming
> out in the serial representation, in amongst the cursor positioning
> codes.
> 
> In
>   http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/serial-rochester0.log
> near Apr 13 22:34:32.442724 you see a banner from grub and then a
> bunch of "invalid utf-8 sequence: \304", and at the end some actual
> messages from grub.  But the meat of the menu, including the cookie,
> is missing.
> 
> So the osstest considers the test a failure: the thing it arranged to
> appear in the bootloader output was not visible in the serial log.
> 
> 
> I have not yet investigated this beyond making these observations.  It
> is possible that there is a disagreement over character encoding or
> something, and what is happening is that line drawing characters are
> being misinterpreted by sympathy.  It might be a firmware bug or a
> grub bug or a sympathy bug or a hardware design issue.  I think the
> next steps would be to determine exactly what sequence of bytes are
> being sent by the host, and to investigate its BIOS options for
> controlling serial terminal output.
> 
> 
> HTH.
> 
> Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

* [Xen-devel] rochester (Thunder-X) bootloader lost output issue
@ 2019-05-01 10:10         ` Ian Jackson
  0 siblings, 0 replies; 151+ messages in thread
From: Ian Jackson @ 2019-05-01 10:10 UTC (permalink / raw)
  To: Julien Grall, Stefano Stabellini; +Cc: xen-devel

Hi.  A couple of weeks ago I wrote a writeup about this kind of
problem:

 test-arm64-arm64-examine 11 examine-serial/bootloader fail REGR. vs. 119195

This is going to affect all of osstest's branches and it will be
tiresome to force push it.  Particularly, I think it may cause the
examine jobs to become stuck on the rochesters and (even worse) if it
doesn't it will pass by accident requiring another force push.

I would like to either fix this, or write a programmatic workaround.
Would someone from the Xen ARM community be willing to debug this any
time soon ?

Failing that I will probably make a hostflag that causes this test to
be skipped, or something.

(Bottom-quoting my previous writeup for context.)

Thanks,
Ian.

Ian Jackson writes ("Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass"):
> Julien Grall writes ("Re: [Xen-devel] [linux-arm-xen test] 134708: regressions - all pass"):
> > On 4/15/19 7:28 PM, osstest service owner wrote:
> > > flight 134708 linux-arm-xen real [real]
> > > http://logs.test-lab.xenproject.org/osstest/logs/134708/
> ...
> > >   test-arm64-arm64-examine    11 examine-serial/bootloader fail REGR. vs. 119195
> > 
> > I am a bit confused with the failure here [1]:
> > 
> > 2019-04-13 22:36:55 Z ---------- substep 11 examine-serial/bootloader fail ---------- 
> > 
> > IIUC, we are looking for "osstest cookie". However this does not seem to
> > appear on rochester0's logs. Any insights how "osstest cookie" will be output?
> 
> Hi.  Yes, this is an issue I already discovered...
> 
> Ian Jackson writes ("[OSSTEST PATCH 00/62] Update to Debian stable (stretch)"):
> > There seem to be a number of outstanding problems which I decided were
> > not blockers:
> ...
> >  * The serial output from the new rochester arm64 machines is missing
> >    some of the grub bootloader messages (and this is detected by one
> >    of the examine jobs).  I may need help from someone familiar with
> >    these machines' hardware/firmware.
> 
> I decided that this issue was not serious enough to be a blocker.  It
> may need some force pushes, especially if we can't fix it soon,
> because osstest will try this test, in other flights, on the
> rochesters, where it fails, and that looks like a regression.
> 
> In particular, this is not a regression in the linux-arm-xen branch.
> So we could force push it.
> 
> 
> As for the bug:
> 
> This check is checking that the osstest serial log captures the output
> from the bootloader.  This can be quite important for debugging,
> especially to distinguish hardware or configuration problems from
> software problems.  Seeing the bootloader output also provides
> a useful reference point to people unfamiliar with osstest.
> 
> This check is primarily a test on osstest itself; it is also part of
> machine commissioning.  The test works by putting a magic string in
> the bootloader output.
> 
> Compare the failure above
>   http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/info.html
> with this one which ran on laxton1:
>   http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/info.html
> 
> If you look at the final grub config
>   http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/laxton1--grub.cfg.new
> you can see things like this
>   menuentry 'osstest cookie 0b4b9311157321d55cca9d25ff49159d Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-a8e4e9c6-4829-402b-93aa-964f9cf39c41' {
> 
> In
>   http://logs.test-lab.xenproject.org/osstest/logs/134643/test-arm64-arm64-examine/serial-laxton1.log
> near Apr 11 17:07:07.787491, you can see the osstest cookie coming
> out in the serial representation, in amongst the cursor positioning
> codes.
> 
> In
>   http://logs.test-lab.xenproject.org/osstest/logs/134708/test-arm64-arm64-examine/serial-rochester0.log
> near Apr 13 22:34:32.442724 you see a banner from grub and then a
> bunch of "invalid utf-8 sequence: \304", and at the end some actual
> messages from grub.  But the meat of the menu, including the cookie,
> is missing.
> 
> So the osstest considers the test a failure: the thing it arranged to
> appear in the bootloader output was not visible in the serial log.
> 
> 
> I have not yet investigated this beyond making these observations.  It
> is possible that there is a disagreement over character encoding or
> something, and what is happening is that line drawing characters are
> being misinterpreted by sympathy.  It might be a firmware bug or a
> grub bug or a sympathy bug or a hardware design issue.  I think the
> next steps would be to determine exactly what sequence of bytes are
> being sent by the host, and to investigate its BIOS options for
> controlling serial terminal output.
> 
> 
> HTH.
> 
> Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

end of thread, other threads:[~2019-05-01 10:10 UTC | newest]

Thread overview: 151+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-15 18:28 [linux-arm-xen test] 134708: regressions - all pass osstest service owner
2019-04-15 18:28 ` [Xen-devel] " osstest service owner
2019-04-15 20:34 ` Julien Grall
2019-04-15 20:34   ` [Xen-devel] " Julien Grall
2019-04-10 14:23   ` [OSSTEST PATCH 00/62] Update to Debian stable (stretch) Ian Jackson
2019-04-10 14:23     ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 01/62] gitignore: ignore vim swap file Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 02/62] power: Fix uninitialised variable warning Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 03/62] ts-xen-build-prep: only install w3c-dtd-xhtml for suites <stretch Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 04/62] ts-xen-build-prep: install packages for suites >jessie Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 05/62] ts-xen-install: install some packages on stretch Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 06/62] Debian.pm: use sysvinit-core instead of systemd Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 07/62] ts-leak-check: suppress systemd-shim, which leaks in stretch Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 08/62] ts-host-install: don't use the new nic naming scheme Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 09/62] ts-debian-fixup: merge origin extra= to our own if necessary Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 10/62] ts-debian-fixup: append noresume Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 11/62] ts-xen-build-prep: install e2fslibs-dev Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 12/62] ts-guests-nbd-mirror: make it work with stretch Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 13/62] Extend workaround `clk_ignore_unused' to stretch Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 15:47       ` Julien Grall
2019-04-10 15:47         ` [Xen-devel] " Julien Grall
2019-04-10 14:23     ` [OSSTEST PATCH 14/62] adjust how to skip bootloader installation for arm32, in Stretch Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 15/62] ts-debian-di-install: use gho to pick d-i Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 16/62] make-flight: guest should use jessie to test pvgrub Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 17/62] stretch: Use chainloading when booting using GRUB on Arm64 Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 18/62] Drop rumprun tests Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 19/62] Debian: Fix http:// url for bugs.xenproject.org Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 20/62] ts-guests-nbd-mirror: use target_{get, put}file_root to transfter cfg Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 21/62] ts-kernel-build: disable host1x, which doesn't build Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 15:27       ` Thierry Reding
2019-04-10 15:27       ` Thierry Reding
2019-04-10 15:27         ` [Xen-devel] " Thierry Reding
2019-04-10 15:35         ` Julien Grall
2019-04-10 15:35           ` [Xen-devel] " Julien Grall
2019-04-10 15:47           ` Ian Jackson
2019-04-10 15:47             ` [Xen-devel] " Ian Jackson
2019-04-11 10:51             ` Julien Grall
2019-04-11 10:51               ` [Xen-devel] " Julien Grall
2019-04-11 10:56       ` Julien Grall
2019-04-11 10:56         ` [Xen-devel] " Julien Grall
2019-04-10 14:23     ` [OSSTEST PATCH 22/62] contents_make_cpio: Include symlinks Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 23/62] contents_make_cpio: Make files owned by root Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 24/62] overlay-persistent-net: Copy from jessie Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 25/62] persistent-net: Add overlay on installed systems >= stretch Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 26/62] persistent-net: Add overlay in installer " Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 27/62] ts-host-install: Break out $persistent_net_rules Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 28/62] ts-host-install: Unconditionally mkdir -p /etc/udev/rules.d Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 29/62] ts-host-install: Put canary in 70-persistent-net.rules Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 30/62] persistent-net: Include initramfs script to copy to target Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 31/62] persistent-net: Set net.ifnames=0 in di_installcmdline_core Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 32/62] ts-kernel-build: Enable some additional drivers for Thunder-X Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 33/62] ts-xen-build: Enable ITS driver in Xen Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 34/62] TestSupport: Move `stashed files' and `next_unique_name' earlier Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 35/62] TestSupport: Move `target_somefile_getleaf' earlier Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 36/62] TestSupport: target_somefile_leaf rename and change a variable Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 37/62] TestSupport: Provide target_getfile_root_stash Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 38/62] ts-guests-nbd-mirror: Use target_getfile_root_stash Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 39/62] preseed_base: chmod ssh host private keys to placate sshd Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 40/62] preseed_base: break out debian_overlays_fixup_cmd Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 41/62] ts-debian-fixup: Use debian_overlays_fixup_cmd Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 42/62] preseed_hook_command: allow specifying di keys other than preseed/* Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 43/62] preseed_hook_installscript: Use partman/early_command, not preseed/ Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 44/62] Debian: preseed_hook_installscript: New $atonce option Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 45/62] Debian: partman scripts: Run right away too Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 46/62] Debian: set partman-lvm/device_remove_lvm_span Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 47/62] Debian: Add reference to bug numbers for erase-other-disks Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 48/62] dm restrict audit: actually install right package for fishdescriptor Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 49/62] Debian: Move preseed_backports_packages earlier Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 50/62] dm restrict audit: actually install fishdescriptor in host Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 51/62] dm restrict audit: always install (some) chiark-scripts Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 52/62] target_install_packages: Consistently use qw(...) rather than '...' Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:23     ` [OSSTEST PATCH 53/62] ts-xen-install: Install libpciaccess0 Ian Jackson
2019-04-10 14:23       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 54/62] ts-debian-hvm-install: Honour linux_boot_append target var Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 55/62] make-flight: shadow test: Disable kpti in guests Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:33       ` Andrew Cooper
2019-04-10 14:33         ` [Xen-devel] " Andrew Cooper
2019-04-10 15:59         ` Ian Jackson
2019-04-10 15:59           ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 56/62] platforms: Pass suite to get_arch_platforms Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 57/62] platforms: Honour suite in get_arch_platforms Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 58/62] dm restrict, fishdescriptor: Update to a fixed chiark-scripts Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 59/62] Debian: Fix /lib/udev/ifupdown-hotplug to not run if / is ro Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 60/62] Debian: Fix /lib/udev/ifupdown-hotplug in guests from debootstrap Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 61/62] production-config-cambridge: Provide TftpDiVersion_stretch Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-10 14:24     ` [OSSTEST PATCH 62/62] Switch to Debian Stretch Ian Jackson
2019-04-10 14:24       ` [Xen-devel] " Ian Jackson
2019-04-16 10:11     ` [linux-arm-xen test] 134708: regressions - all pass Ian Jackson
2019-04-16 10:11       ` [Xen-devel] " Ian Jackson
2019-05-01 10:10       ` rochester (Thunder-X) bootloader lost output issue Ian Jackson
2019-05-01 10:10         ` [Xen-devel] " Ian Jackson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.