From b7c3f2f6899a06306c5ecd81c032d0960314bd8b Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Tue, 19 Apr 2022 16:24:29 +0200 Subject: meta-ibm: systemd-networkd-wait-online override IBM systems do not always configure both eth0 and eth1 ports. This causes this service to fail and hold up the boot of the BMC by the 2 minute timeout. Override this service file to have IBM systems only wait for eth0 OR eth1 to become active. The Genesis3 BMC has two NICs. Be happy with a link up on one of them. TEST=Build for Genesis3 & make sure with waits for either of the two NIC to be active. Signed-off-by: Patrick Rudolph Change-Id: I0ffd652fabd5e998b14e23621d89046a9eed5455 Signed-off-by: Andrew Geissler --- .../systemd/systemd/systemd-networkd-only-wait-for-one.conf | 3 +++ meta-ibm/recipes-core/systemd/systemd_%.bbappend | 9 +++++++++ 2 files changed, 12 insertions(+) create mode 100644 meta-ibm/recipes-core/systemd/systemd/systemd-networkd-only-wait-for-one.conf (limited to 'meta-ibm') diff --git a/meta-ibm/recipes-core/systemd/systemd/systemd-networkd-only-wait-for-one.conf b/meta-ibm/recipes-core/systemd/systemd/systemd-networkd-only-wait-for-one.conf new file mode 100644 index 0000000000..1ef5a03a10 --- /dev/null +++ b/meta-ibm/recipes-core/systemd/systemd/systemd-networkd-only-wait-for-one.conf @@ -0,0 +1,3 @@ +[Service] +ExecStart= +ExecStart=/lib/systemd/systemd-networkd-wait-online --any diff --git a/meta-ibm/recipes-core/systemd/systemd_%.bbappend b/meta-ibm/recipes-core/systemd/systemd_%.bbappend index c63cf0c0bb..b412b88d31 100644 --- a/meta-ibm/recipes-core/systemd/systemd_%.bbappend +++ b/meta-ibm/recipes-core/systemd/systemd_%.bbappend @@ -9,6 +9,8 @@ SRC_URI:append:p10bmc = " file://journald-size-policy-16MB.conf" SRC_URI:append:p10bmc = " file://vm.conf" SRC_URI:append:p10bmc = " file://network.conf" +SRC_URI:append:genesis3 = " file://systemd-networkd-only-wait-for-one.conf" + FILES:${PN}:append:ibm-ac-server = " ${systemd_unitdir}/journald.conf.d/journald-storage-policy.conf" FILES:${PN}:append:ibm-ac-server = " ${systemd_system_unitdir}/systemd-journald.service.d/systemd-journald-override.conf" FILES:${PN}:append:ibm-ac-server = " ${systemd_unitdir}/journald.conf.d/journald-size-policy.conf" @@ -19,6 +21,8 @@ FILES:${PN}:append:p10bmc = " ${systemd_unitdir}/journald.conf.d/journald-size-p FILES:${PN}:append:p10bmc = " ${sysconfdir}/sysctl.d/vm.conf" FILES:${PN}:append:p10bmc = " ${sysconfdir}/sysctl.d/network.conf" +FILES:${PN}:append:genesis3 = " ${systemd_system_unitdir}/systemd-networkd-wait-online.service.d/systemd-networkd-only-wait-for-one.conf" + do_install:append:ibm-ac-server() { install -m 644 -D ${WORKDIR}/journald-storage-policy.conf ${D}${systemd_unitdir}/journald.conf.d/journald-storage-policy.conf install -m 644 -D ${WORKDIR}/systemd-journald-override.conf ${D}${systemd_system_unitdir}/systemd-journald.service.d/systemd-journald-override.conf @@ -32,6 +36,11 @@ do_install:append:p10bmc() { install -m 644 -D ${WORKDIR}/network.conf ${D}${sysconfdir}/sysctl.d/network.conf } +# Genesis3 uses both BMC's RGMII MACs, so wait for only one to be online +do_install:append:genesis3() { + install -d ${D}${systemd_system_unitdir}/systemd-networkd-wait-online.service.d/ + install -m 644 -D ${WORKDIR}/systemd-networkd-only-wait-for-one.conf ${D}${systemd_system_unitdir}/systemd-networkd-wait-online.service.d/systemd-networkd-only-wait-for-one.conf +} # Witherspoon doesn't have the space for the both zstd and xz compression # libraries and currently phosphor-debug-collector is using xz. Switch systemd # to use xz so only one of the two is added into the image. -- cgit v1.2.3