From patchwork Fri Feb 20 11:53:39 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhihang Wei X-Patchwork-Id: 4882 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 20 Feb 2026 12:53:50 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-wm1-f55.google.com (mail-wm1-f55.google.com [209.85.128.55]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 61KBrnr6004117 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 20 Feb 2026 12:53:49 +0100 Received: by mail-wm1-f55.google.com with SMTP id 5b1f17b1804b1-482d8e6e13asf14813945e9.3 for ; Fri, 20 Feb 2026 03:53:49 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1771588424; cv=pass; d=google.com; s=arc-20240605; b=HFo+vteDpXi5BsTYwhCZIoVDKwCT2hHs9nCtQbv500u5W9U0HOCMiPx0MB1j8/tYIV p6glTobCNi7DLjJ6W6bFJqJ1Gd0+9qFcgKVPQZndzJwZVG1G9xfabltxPQYnIP0z6Uyq cwE9jwWEMbYFt1uj03EX+OrXlI5VedXzuSwJ2LA8KCum06bwJ3cPCQiiNMQmHsyyaSv9 tt0RM9AeN4hvporyZfU8l4l6bqM08Em1X42L/eW6009v3S7Z1OKmLap5TCqCyeD6tLZd eCR085y8uyFvCoa5wwt2s2Id4X5RQfSFJKPliBl61OdJSSHjDyiq9ntFf7fj+PU4II+g 5Iyw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:mime-version:message-id:date :subject:to:from:sender:dkim-signature; bh=dcRQE7c+rFOw9E2c+pwqzoxnvd9z/iqfoOiPsxzM9Y4=; fh=LVGsB8tE+llPXCvS09e6P57vsLma7KBLnanl7vxagr4=; b=j0yq2SjT0fvMqVr8ufV8mo0KeyZ05dHfG44H0zxVi8AReXm12pUUkA5Y2VZDYPJhwe AG8YzX7WlXgQ4q9xvUUmMx/h1ILB6hHJFbswOmuIEQd5fox8AFWV1GJgMxQzYQhHz8D3 oAc8vuWXv249+RJcr5WnMUi/4+Pz1YQi5iEUAffqj0rZ789Qf+QlZ2gnSSnXntIGtilP kdtH9rtoFzMNbyQX2Bao2dnIt2vt82uIXREc96+LDOKVUZ+gLZUFFWgsjvflE9KQlJCB B2Yzd+b96Wsyv1ySIr7UQ5vm97PgiXIpCEVcBYI3BVkAjx3cgM43qd21eQWg/y1cKAf9 fQ3Q==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1771588424; x=1772193224; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:message-id:date:subject:to:from :sender:from:to:cc:subject:date:message-id:reply-to; bh=dcRQE7c+rFOw9E2c+pwqzoxnvd9z/iqfoOiPsxzM9Y4=; b=R4W5rehLVOdJvH4R1hos6qAllfgvpmPadd+yTzrV1XqaeKEOtkMzzpoSN2V2WZzWQk 6bzkQk9J9i7vindaemLikkuH1EHRTlDub8tADSV/PHg5Ur9jRrxxxZQPR8Lr2CAWTLtW XAvkxuOJXqVgPuHJGvxRhL0anWk2xqi2rBCVmUm9vcNw5iwIwOYObcfmjRpUmBMhCkzX ue2PXHRmPuwpke1SK8/ZmybPcpuimJvwxhMQ1zGEUfSPCnibI5uHCUkPNbb3tp3nScXN TF0mOlOAiGc4ZixlGaB8nwxU1PUc2M/kMmlSqrrChbC5SwYk0B306zRzV7JRykbQ0LL3 h5Dw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771588424; x=1772193224; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :message-id:date:subject:to:from:x-beenthere:x-gm-message-state :sender:from:to:cc:subject:date:message-id:reply-to; bh=dcRQE7c+rFOw9E2c+pwqzoxnvd9z/iqfoOiPsxzM9Y4=; b=rL/euLwx0Bw1+jkQK7Vq1uZ89IRtgpq/+kNPZASldog4TrUpWfD8ARjG8+JLYjbxF/ Q6fztYZmiClDQYgIYD4UTApSebx+x2JFMK3IiZCxppHxbAqI+AlYDgE1cL7lNtTaXkDw Se76HYyORX1E7QB9qSKlkLjw064RVTqBeFgjwmm/kt+lJQ9nnh+lJsDTS15Q3zNKsiWG TtwR6WnNlgHrV1gjnLGXuNwDoRlXuHa0O4/kFE5Cyy/yUo94xFvekDEpC/gMhIslSu0v 2vdH0ZILe9m4TOEw00ti36wBQqNr4UrbSZyzS9SUCTOm9OLilkv4KL9pLpVLAVlOgsiQ Jd9Q== Sender: isar-users@googlegroups.com X-Forwarded-Encrypted: i=2; AJvYcCUKU7IiHQfOktWeB6IAu05vqEK+5rKU2RvVBjFl7dYr10SWfJTwl7N3iJYWErft6FgOrl1o81c=@isar-build.org X-Gm-Message-State: AOJu0YzXArm0xurdKhlcJKvc7gqYXHH5hGP0UJl63KL2FF539zy3hF/t roEnqfUukmILE+Ow/D7v7vfv67gigjW6S7qDzSH0iJVS+DiAhJUQ1Qf2 X-Received: by 2002:a05:600c:6306:b0:480:3a71:92b2 with SMTP id 5b1f17b1804b1-4839e6680f9mr81289825e9.26.1771588423996; Fri, 20 Feb 2026 03:53:43 -0800 (PST) X-BeenThere: isar-users@googlegroups.com; h="AV1CL+HDdPi6JLu0gwGQ4sN3MZILUOajYKQGJMj26IOdAFwVZg==" Received: by 2002:a05:600c:1c18:b0:483:a26d:128e with SMTP id 5b1f17b1804b1-483a26d13bels13808225e9.1.-pod-prod-01-eu; Fri, 20 Feb 2026 03:53:42 -0800 (PST) X-Received: by 2002:a05:600c:5306:b0:47e:e4ff:e2ac with SMTP id 5b1f17b1804b1-4839e66d93bmr100186535e9.33.1771588421788; Fri, 20 Feb 2026 03:53:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1771588421; cv=none; d=google.com; s=arc-20240605; b=ajjkN+pt7/8hwp+WCvdT9pIk0WLpm8tmOXsGDHM+kMAzpFLd/uPhBZkEzATj7hhu// mP2Z9esESDfK1C32RlKrc96xwqmSxxCyYAWgZLXNbUrW29giWpP3So8OhdtNfZMaFzzn HX0FLKce6+xsiKs01TN7eyK+3X3l5l4eWOV0zwool36t6lX5VfMqjD0W1kzUkfj5aJcT HSSFayOAcrBvWU3t2kpZ9btLMG9I2s0ueXxGr97N5Qt59vUjZqfUCcLu+F78dkIw82aA 0pIXNQwz9YrZxVJ7cVnIVhgrX4tfHibGLlDVIGk7p1R5D3k7gBUt7rteJtr/Q3HYg3XP Pz3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from; bh=ZHZjaOyrZqZnqartUybBrVuKWy36X9hKDDrq63gEFyg=; fh=7tclEdh7YbwSQowgJ6LNq720O7H5HTEaqj22NJWRE2E=; b=FSG8EPramzWUYu2I2U5qNPu/cCng9aUfGIy8qNey1wKb40fEhCzskk3dNaaO6KyMEy dSVB/JCbLDsMZlVTQvyQneN6UC7B+dQEaX3Y1m5QFYnDz3R8y1qV3zdtGsk3ay1eHMcA VHuqjcnSZb5qohaqTODVSPAV1ghmABZIgvgj2Xf5ukyqd9bMs+Xmkf5fTTDu2js8+sK8 2e5KI6lYsk7zKfDpb16Wn5AN7dReDGfluBoVXiBIedTftogMvscycP15oSFCzs5LnQke JYYC4eOPf5YPlCF4r8doFutWMjbYM95uqDeQDpkt+uZE4i3M3TVI7oAp5Rotia1/zGcF 9YrQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id ffacd0b85a97d-43796ac325csi656066f8f.5.2026.02.20.03.53.41 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 20 Feb 2026 03:53:41 -0800 (PST) Received-SPF: pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Received: from debian-zwei.m.ilbers.de ([88.130.203.42]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPA id 61KBrdfx004103 for ; Fri, 20 Feb 2026 12:53:39 +0100 From: Zhihang Wei To: isar-users@googlegroups.com Subject: [PATCH] qemuarm-trixie: Workaround with missing drivers in qemuarm-trixie initrd Date: Fri, 20 Feb 2026 12:53:39 +0100 Message-Id: <20260220115339.1188052-1-wzh@ilbers.de> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 X-Spam-Status: No, score=-4.6 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2, RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-Original-Sender: wzh@ilbers.de X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of wzh@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=wzh@ilbers.de Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= This is a workaround to fix the current qemuarm-trixie image unbootable issue. Starting with Debian Trixie, update-initramfs invokes "dracut-install" to collect and install required drivers into the generated initrd. "dracut-install" relies on fts_open() / fts_read() from glibc to traverse directories and locate drivers. Due to a long-standing bug [1] between qemu and glibc, the fts_* functions may fail to find files on certain 32-bit architectures. As a result, required modules such as virtio_blk are not detected and not added to the initrd. The produced image then fails to boot under qemu because the block device driver is missing. A similiar dracut bug report was filed in 2024 [2], pointing to this upstream glibc issue reported in 2018 [1]. No upstream fix has been applied, and the issue appears to affect only qemu builds for specific 32-bit targets. As a temporary workaround, introduce INITRAMFS_EXTRA_DRIVERS and use it to append the neccessary drivers that are currently missed from the initrd. For a complete fix, we either need to push for an upstream glibc/qemu fix, or convince dracut to avoid using these non-POSIX fts_* functions and use opendir() / readdir() instead. [1] https://sourceware.org/bugzilla/show_bug.cgi?id=23960 [2] https://bugs-devel.debian.org/cgi-bin/bugreport.cgi?bug=1079443 Signed-off-by: Zhihang Wei --- meta-isar/conf/multiconfig/qemuarm-trixie.conf | 2 ++ meta/classes-recipe/rootfs.bbclass | 9 ++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/meta-isar/conf/multiconfig/qemuarm-trixie.conf b/meta-isar/conf/multiconfig/qemuarm-trixie.conf index 5600ab23..dcf0b839 100644 --- a/meta-isar/conf/multiconfig/qemuarm-trixie.conf +++ b/meta-isar/conf/multiconfig/qemuarm-trixie.conf @@ -5,3 +5,5 @@ MACHINE ?= "qemuarm" DISTRO ?= "debian-trixie" + +INITRAMFS_EXTRA_DRIVERS += "virtio_blk" diff --git a/meta/classes-recipe/rootfs.bbclass b/meta/classes-recipe/rootfs.bbclass index 8485b32f..65843f61 100644 --- a/meta/classes-recipe/rootfs.bbclass +++ b/meta/classes-recipe/rootfs.bbclass @@ -12,12 +12,19 @@ ROOTFS_DISTRO ?= "${DISTRO}" # the default initramfs generator and it is not # possible to derive the value in another way ROOTFS_USE_DRACUT ??= "" +INITRAMFS_EXTRA_DRIVERS ?= "" def initramfs_generator_cmdline(d): rootfs_packages = d.getVar('ROOTFS_PACKAGES') or '' + extra_drivers = d.getVar('INITRAMFS_EXTRA_DRIVERS') or '' if 'dracut' in rootfs_packages or bb.utils.to_boolean(d.getVar('ROOTFS_USE_DRACUT')): return "dracut --force --kver \"$kernel_version\"" - return "update-initramfs -u -v -k \"$kernel_version\"" + cmds = [] + if extra_drivers: + for drv in extra_drivers.split(): + cmds.append(f'echo {drv} | tee -a /etc/initramfs-tools/modules') + cmds.append('update-initramfs -u -v -k "$kernel_version"') + return " && ".join(cmds) ROOTFS_PACKAGES ?= "" ROOTFS_VARDEPS ?= ""