From 5196d7bacaef1076c361adaa2867be31759c1b52 Mon Sep 17 00:00:00 2001 From: Aníbal Limón Date: Fri, 28 Aug 2015 11:15:01 -0500 Subject: systemd: Increase devices timeout in QEMU machines to avoid failures on serial-getty MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Systemd serial-getty is failing because dev-tty ends with timeout, systemd uses a default timeout of 90 secs that it's reached on AB's production environment due to high I/O loads (nfs). When use QEMU is used without KVM support, the machine code is executed by TCG (software code execution) that is dependent on devices layer and causes locks between TCG/Devices increasing the machine code execution time [1]. QEMU don't support configuration of device timeout always uses a default one that is 90 secs, so the next patch increases the device timeout to 240 secs [2] in order give enough time to get devices ready. It ONLY applies on QEMU machines. [YOCTO #8141] [1] http://blog.vmsplice.net/2011/03/qemu-internals-overall-architecture-and.html [2] https://bugzilla.yoctoproject.org/show_bug.cgi?id=8141#c10 Signed-off-by: Aníbal Limón Signed-off-by: Richard Purdie --- ....c-Change-the-default-device-timeout-to-2.patch | 31 ++++++++++++++++++++++ meta/recipes-core/systemd/systemd_219.bb | 1 + 2 files changed, 32 insertions(+) create mode 100644 meta/recipes-core/systemd/systemd/qemuall_io_latency-core-device.c-Change-the-default-device-timeout-to-2.patch (limited to 'meta/recipes-core/systemd') diff --git a/meta/recipes-core/systemd/systemd/qemuall_io_latency-core-device.c-Change-the-default-device-timeout-to-2.patch b/meta/recipes-core/systemd/systemd/qemuall_io_latency-core-device.c-Change-the-default-device-timeout-to-2.patch new file mode 100644 index 0000000000..c7e171152a --- /dev/null +++ b/meta/recipes-core/systemd/systemd/qemuall_io_latency-core-device.c-Change-the-default-device-timeout-to-2.patch @@ -0,0 +1,31 @@ +Upstream-Status: Inappropriate [Specific case QEMU/AB] + +From 7b8c4e0a67a79a75e1bd77df3a452a5497322108 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= +Date: Thu, 27 Aug 2015 17:58:26 -0500 +Subject: [PATCH] core/device.c: Change the default device timeout to 240 sec. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Aníbal Limón +--- + src/core/device.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/core/device.c b/src/core/device.c +index e7efcf0..4ed8f08 100644 +--- a/src/core/device.c ++++ b/src/core/device.c +@@ -110,7 +110,7 @@ static void device_init(Unit *u) { + * indefinitely for plugged in devices, something which cannot + * happen for the other units since their operations time out + * anyway. */ +- u->job_timeout = u->manager->default_timeout_start_usec; ++ u->job_timeout = (240 * USEC_PER_SEC); + + u->ignore_on_isolate = true; + u->ignore_on_snapshot = true; +-- +1.9.1 + diff --git a/meta/recipes-core/systemd/systemd_219.bb b/meta/recipes-core/systemd/systemd_219.bb index e187cea5e2..232675374b 100644 --- a/meta/recipes-core/systemd/systemd_219.bb +++ b/meta/recipes-core/systemd/systemd_219.bb @@ -50,6 +50,7 @@ SRC_URI = "git://github.com/systemd/systemd-stable;branch=v219-stable;protocol=g file://init \ file://run-ptest \ " +SRC_URI_append_qemuall = "file://qemuall_io_latency-core-device.c-Change-the-default-device-timeout-to-2.patch" S = "${WORKDIR}/git" -- cgit 1.2.3-korg