From patchwork Thu Apr 17 07:32:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Prusty, Badrikesh" X-Patchwork-Id: 4187 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 17 Apr 2025 09:34:59 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-wm1-f57.google.com (mail-wm1-f57.google.com [209.85.128.57]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 53H7YxNF014582 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 17 Apr 2025 09:34:59 +0200 Received: by mail-wm1-f57.google.com with SMTP id 5b1f17b1804b1-43941ad86d4sf1773875e9.2 for ; Thu, 17 Apr 2025 00:34:59 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1744875293; cv=pass; d=google.com; s=arc-20240605; b=BxBEyAfvu7OOE/dGundBB37Om55Kd1Nh0S07ygl0DQx87GzeJUxuZn4NdmudEpCjP6 yMkaHK7uJlJwTAS5EGJwfeTqNXOlg5IoFxmtRpSiqhG39qGGndRURg14WHyTOB1QmHKX swLHTDCX8OjkDwO1WWGll3Shtl3qGXyXj4j5y0c2i2mOD/AChW+W/VPjhMol22/jjcD6 dMd/yJfMIqcyHSqFhtQLEVqVgXKn5spqit95twVR2GEJmuY5MtkIxbNF+k0kac+TW4Ox DFEOfgK5zpoYRxF8PloZ3mf1EQ/nF8M2LoXwQuMuJwViuGA8zgYxUOVDcVSSiFeRyhlN gEXg== 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:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=y9GSMNOXhZ9UYrRn1Xd4lN327FOuG2PcXVX0SJy8r90=; fh=GwTU3DNosml4xv0PVGDqNuPnFyyrMeh6yMbf2xx7jWw=; b=c0m+xZA2I32SgH3ppfXE0+uv3Yo+wwo4pzdcbOQprqm1Qc84QtXNUh/QVDQKWinsvc TlhiHZXSognX2to2QmwFLvt6y3HjaJgPMhOU+fNeKld9AIhGfAYfq1rpKwmCR+Rfqt2O et0PC1eg1r+WMNrai2jAAwnE1cJ9Y6PZ0kN8x28gQHsRcIQUxEVuMgLDJ1nOSYOq3fbW 4x9C/1Enh+aehvHG4dQMy+WzLRFjn07fNMcj7/8Re7/Y3o/KXsYiXBniT8542AiJwP/H yEtCCb2Lwy5NWlMVYqvl/Q+AozC4hHPL4qnucGeqU3JhzherlMxgvADOs5RBhJsyPRi7 P0sg==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=BEgif3pE; spf=pass (google.com: domain of fm-1328765-202504170734508fff33a41030042f09-t_dk23@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1328765-202504170734508fff33a41030042f09-T_dk23@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1744875293; x=1745480093; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=y9GSMNOXhZ9UYrRn1Xd4lN327FOuG2PcXVX0SJy8r90=; b=lQC4iAKWkU2CZKTq7iXr2gBdNsnoFOFc2JlSz2Xi4kC4UEIN9VXvFi/jnVV/wV7AIC SmSR1mVADtM3w/T2ajvsR2tJAipzODMclirhwPs0n6X/g2XCctnUUZSL83OT5nUOdhn+ bLOpYPwL5+mY/1iusv7deQXkIeQnU/pgRwDvJg3YHw+0fyzk+VAS3s+m0dS3Z2x4gr2F vc4Nlyn/VPFTpot+OYKZJCGgzLzJr6hvHQGSWZN6uoIWd3pTNbMLRA2sPe3CMNwkIvlZ dYhf2hbti/2T7Kw5wVs/8fpzsDP7WHZJM8RutD9M9YPdUsJxkW0W4mLIg2uJ1MYMvUr0 5xbw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744875293; x=1745480093; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=y9GSMNOXhZ9UYrRn1Xd4lN327FOuG2PcXVX0SJy8r90=; b=nH76B7cDfXvaXEwWGQatJ0BmgylISvWZk+Lc1+Ww8zHBvx7AuX+Zp25XppjeEy7ufq 81GtRTsRWtQP+yByGaGYENs1IX4MzzSTQOSXOkFSGutuISJGn/iui35W6oXSEdL8PUFc km8M7Ug2K8tFEa/TKsfwG7b7G3AQIC9TiIK/wzX7lVzDdGZmwCLsddPZ690rHl74Nk1F brmaPQaELI3XS5z2fCRNBT2Li2k2gEYmrQ47sa10UGte2jf8Nq9fm+mQJKhXifLkhXHC lNVKgt4tnOOJuRRc5j1lKT5GeSeJBb44QQ6cT/Gta8UvzwwSjlh+iJNqW7ip1+W2P3A6 c9kA== X-Forwarded-Encrypted: i=2; AJvYcCWr8fuGuPDM6NXLhYPa0nwVEaOR2ZhecyaTzXyJKnYCgyGDKbg5VQbG0vCKItYj+QrqDqdB6/w=@isar-build.org X-Gm-Message-State: AOJu0YwEE0sv5E1oYGdH7HxbDoQPGqvc93GdTSwLsG13PeSbPtgGldNw eYsKwW0zOSsoKR6/gQmfWG7niIY2FNX7R5wmhGKvAavyqEAwJKFF X-Google-Smtp-Source: AGHT+IEXjFV0riZIiL0sytwL3uy3ODISgjn/1PTqfnLwAE93eDomVPe9fvg+aSPcWPGU4+KNsjNoyw== X-Received: by 2002:a05:6000:240c:b0:399:71d4:b8 with SMTP id ffacd0b85a97d-39ee5b1682emr4064769f8f.23.1744875293070; Thu, 17 Apr 2025 00:34:53 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h=ARLLPAKqokQjfuGix6zgfRB+6/NHahUlbE3KZPl7yX+VcnvyEw== Received: by 2002:a7b:c8d0:0:b0:43c:f7b4:5d58 with SMTP id 5b1f17b1804b1-4406233b1b6ls2315805e9.1.-pod-prod-03-eu; Thu, 17 Apr 2025 00:34:51 -0700 (PDT) X-Received: by 2002:a05:600c:3ace:b0:43c:f0ae:da7 with SMTP id 5b1f17b1804b1-4405d5fca79mr43917855e9.7.1744875290859; Thu, 17 Apr 2025 00:34:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1744875290; cv=none; d=google.com; s=arc-20240605; b=dUDFT+FFIKKPz5lfYtmOxyc9AQ42io89dGsYTnN3XIkv3jlfOFZc3ElcTudIsl0Af5 vGAhLAotsJCXlWTzIx8UBbI4MIrnW1v2CJooHcynfBns8+ZLKVpbTV/ocg5uzEhieBOa trZ6Z956vlVVtVkKonJiELot1uSWiX1xCkF636moIZqhyJjg9tCATrvBZuisX7ccBMcA WT73c2FkhQkdI/F7AEcrYmzRO2HUo/Cg0Ef/H9EhFJSGPVtXqc7I4IJURRnwPJMIIkxi /+f1uRyPWpu9BR9PuLoQCzLYSiwsCRsgsdDiczWhpg5cCUUuK+yPv/eKv4CKMgsFYmG5 G40Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=kjVSdncu5DrEqJyFSydeXsF/r4UyRgJqaZN/WGbNbJ0=; fh=IVe7tedBjrVO7NMfxxhSNfR9HdaoPf8yp1e13zSf5B8=; b=G0JlSaDsnm6SzCBCyZHzhzXQn14Dwf4wFW5c0Nnd/i8D3MorUAlBoCYGJ++Jvios9p 9caWccqWdYDSg+C+Kt5SEsuxlALRYKUBBESgcCgWmh7cuHeuRmADiMfMVnSzj0rY75O/ PFypJBvff6rCbKVbWt7ZfuS9WpgOmYzUctX4hjbb2ZdV1pHAAGotyQyGkKHr0DDuIF75 gfGoDtoBt6rHmygSuWTCKmugHda1RVB1vDJJ2erv/ed+sTYvSMp8qf7OAMp2q1QjLxGL CvmpljqCZXlN9qYzXE1Mu3d+vqojfv9xSLbioyoz8hj8/f8PVpKaVHRxqXRgKDP1Ftst 6UAg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=BEgif3pE; spf=pass (google.com: domain of fm-1328765-202504170734508fff33a41030042f09-t_dk23@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1328765-202504170734508fff33a41030042f09-T_dk23@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net. [185.136.64.225]) by gmr-mx.google.com with ESMTPS id 5b1f17b1804b1-4405b4f8054si728575e9.2.2025.04.17.00.34.50 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Apr 2025 00:34:50 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1328765-202504170734508fff33a41030042f09-t_dk23@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) client-ip=185.136.64.225; Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 202504170734508fff33a41030042f09 for ; Thu, 17 Apr 2025 09:34:50 +0200 X-Patchwork-Original-From: "'Badrikesh Prusty' via isar-users" From: "Prusty, Badrikesh" To: isar-users@googlegroups.com Cc: badrikesh prusty Subject: [PATCH v2] isar-installer: Allow multiple INSTALLER_TARGET_DEVICE for NVMe/SATA Date: Thu, 17 Apr 2025 13:02:21 +0530 Message-Id: <20250417073221.5037-1-badrikesh.prusty@siemens.com> In-Reply-To: References: MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1328765:519-21489:flowmailer X-Original-Sender: badrikesh.prusty@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=BEgif3pE; spf=pass (google.com: domain of fm-1328765-202504170734508fff33a41030042f09-t_dk23@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1328765-202504170734508fff33a41030042f09-T_dk23@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Badrikesh Prusty Reply-To: Badrikesh Prusty 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-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,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-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= From: badrikesh prusty Older devices typically use SATA SSDs/HDDs (often as /dev/sda), but NVMe drives are increasingly common in newer devices (often as /dev/nvme0n1). Thus, we need to build separate isar-image-installer with updated INSTALLER_TARGET_DEVICE for both storage types. With these changes, INSTALLER_TARGET_DEVICE can now accept multiple devices specified as comma or colon separated values (e.g. /dev/sda,/dev/nvme0n1). The provided devices will be checked to ensure they are block devices and not the boot device, preventing the isar-image-installer on a USB drive (often assigned /dev/sda when NVMe is the default storage) from installing the image to the same device it's booted from. Signed-off-by: badrikesh prusty --- kas/image/Kconfig | 4 ++-- .../files/usr/lib/deploy-image-wic/handle-config.sh | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/kas/image/Kconfig b/kas/image/Kconfig index d602c369..4cd0a928 100644 --- a/kas/image/Kconfig +++ b/kas/image/Kconfig @@ -87,9 +87,9 @@ config INSTALLER_TARGET_DEVICE string "Target device to deploy" default "/dev/sda" help - Device to deploy the image onto. + Deploy image to this target device. Accepts comma/colon-separated multiple devices; installs on the first available. Leave this empty to get prompted during installation - Examples: /dev/sda, /dev/nvme0n1 + Examples: /dev/sda, /dev/nvme0n1, /dev/sda:/dev/nvme0n1 choice prompt "Overwrite handling" diff --git a/meta-isar/recipes-installer/deploy-image/files/usr/lib/deploy-image-wic/handle-config.sh b/meta-isar/recipes-installer/deploy-image/files/usr/lib/deploy-image-wic/handle-config.sh index af37150e..26b2966e 100644 --- a/meta-isar/recipes-installer/deploy-image/files/usr/lib/deploy-image-wic/handle-config.sh +++ b/meta-isar/recipes-installer/deploy-image/files/usr/lib/deploy-image-wic/handle-config.sh @@ -31,6 +31,14 @@ for x in $(cat /proc/cmdline); do ;; installer.target.dev=*) installer_target_dev=${x#installer.target.dev=} + installer_target_dev_list=$(echo "$installer_target_dev" | sed 's/[,:]/ /g') + boot_device=$(lsblk -no PKNAME,MOUNTPOINT | grep -E '/boot| /$' | awk '{print "/dev/"$1}' | uniq) + for dev in ${installer_target_dev_list}; do + if [ -b "${dev}" ] && [ "${dev}" != "${boot_device}" ]; then + installer_target_dev=${dev} + break + fi + done installer_unattended=true ;; installer.target.overwrite*)