From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7174822613449965568 X-Received: by 2002:a17:906:af8c:b0:7c1:e7b:1a6e with SMTP id mj12-20020a170906af8c00b007c10e7b1a6emr8910701ejb.185.1670582160930; Fri, 09 Dec 2022 02:36:00 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a17:906:4a16:b0:7c1:2050:cc5f with SMTP id w22-20020a1709064a1600b007c12050cc5fls4041236eju.0.-pod-prod-gmail; Fri, 09 Dec 2022 02:35:59 -0800 (PST) X-Google-Smtp-Source: AA0mqf61v/kHbaWLj0BAXpk9k3BqdhWeRiHPK05ZDd0PRgB9agcyCRdHMJwxVJOLKtprn0GDQmSg X-Received: by 2002:a17:906:1805:b0:78d:f454:3855 with SMTP id v5-20020a170906180500b0078df4543855mr4334077eje.18.1670582159733; Fri, 09 Dec 2022 02:35:59 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1670582159; cv=pass; d=google.com; s=arc-20160816; b=jPOultlh5tN3QLncxPNjvbrkmA1e76jlBctfzQmdsHCyIiKWxAt3sN0kBIhPP79V6K gE0Ww3+1XPACLENGDA7AjcJDoAL11PgR3Dxd9eA9485f1PNvBFpfyV5Wefj2Z1jJpoQI tvYUP//PUZnKtCBYj4R29wjjm5badU7/6h00OdwFF40TsdM/Nj4U2mASeicabqQN4FbS 8KFvzJjbYzRhTYzVkQMm0qlflJz3vjPq357KRGvzhAi2AWHO1mZxr9I0+51sNKmEgWD6 gd9BIH3BmIjClZRoEqWCrCCKMCThwBThqD4G9rYXwKP/4S0fGv4ele2f3dqP3FNFuEWc vHgA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:dkim-signature; bh=fQG0bX29qw3G81r2ObZNX6pkFCBT8hxop8cnirlEmhQ=; b=pow4x1KdaHLKNwbqDcSRHyU3NGefOow7cF/aq6IISf8wqidbcch7/YZ3zB4yeDpj/0 H+xr8lfS5keWrudBcjzpjNVkiWiPUHP5dRqrN6Fdebd2pSrHrcxHyX3xPsly4N9D0+jT u5BjkIgAoxBptXC3Vj66CN0XKJ5CB93+9rncc+w035LV8FkaKbf0bLFa15WnahTAgEiN K+6t4Mqnyqk6TRXrofbnOz5Gci/9eYU0TFp1YjZuinHUo7rTzqZU6Oy5KyFRvS7YnAPy VXw98wBRXrb5PBzVvLvqkIhXpab4/O/3WAI3rHsZj6TJmQr0Uqjf+jMfQ6Df+fOf1OiK tjuw== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=M3T17qAP; arc=pass (i=1 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of tobias.schaffner@siemens.com designates 40.107.21.56 as permitted sender) smtp.mailfrom=tobias.schaffner@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2056.outbound.protection.outlook.com. [40.107.21.56]) by gmr-mx.google.com with ESMTPS id ml21-20020a170906cc1500b007ae8a4b03dbsi93959ejb.0.2022.12.09.02.35.59 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 09 Dec 2022 02:35:59 -0800 (PST) Received-SPF: pass (google.com: domain of tobias.schaffner@siemens.com designates 40.107.21.56 as permitted sender) client-ip=40.107.21.56; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=M3T17qAP; arc=pass (i=1 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of tobias.schaffner@siemens.com designates 40.107.21.56 as permitted sender) smtp.mailfrom=tobias.schaffner@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ey8kY7iwkah8TcXoXLyVZ1ztwQTFrofO5FX1PvpYWcfgXyexTtyGZueO4hHunHs8iHq8sAE4dLDkOd1WAPG3K4hnWNi+QGDffb1Lev4vC0+/GeoJ3gBx3e8Xjzt/L6EK+2wa3sLhmo9IZtD4Nb9abjSb9M7wxoyvHeH8IpkdvwgzU/Jy8f9mdCC90gARzovZeIW3AsPJVuKa6n4l+ApPRlfk9qXO5T9pFmaltIAbzffN1WCKo6HLyChV3NYTsHe35g00moyhsJOba+0OceGoIrGe6okcAAHZHg+Q0girKiS2BbNpQBRy/NKSnssZ79aXewp6SYQYr92rOOQEUKJ5KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fQG0bX29qw3G81r2ObZNX6pkFCBT8hxop8cnirlEmhQ=; b=mgZcUaaRpMpe5wU6hdMX7XoiztspvpDoXypENW8hyomxu2SB+lmhXZVQbLNbwsfJw03/w1FhZ2BJ/TxMvd6Fxvkt8HlyTnefsF5ttY0VpennX/+vS3ijtNinDxyNlnYDMrASqY8rNQqkC/OXb3qQWO42bAei7Ci7LlWDS0bKcEdowrZ8fL82yEgZYZDLohChRfHy2ekKFR7JSOdj5zyS4els2xiX9WwhdmLXQ6itg5bZqknO+0m41SC6oXQQ5ZKmhc/n81ErhpM2AMREHBl5SI9miEWZTHayyFLRrO3Ucne6TDjSzAC7/efp8xnUbMw0bPTR4uIlt5eZpBZSTc0Zzg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 194.138.21.76) smtp.rcpttodomain=googlegroups.com smtp.mailfrom=siemens.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=siemens.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=siemens.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fQG0bX29qw3G81r2ObZNX6pkFCBT8hxop8cnirlEmhQ=; b=M3T17qAPotffpgA8c6e5zW3ScnsNsWtDPGg5ScpUjGXLS17AZX3tsYzXH+Op/0B48i3OJRVyQlXWoUKDKDNTnTN7Uqc+zThztu3AMbRW4dB0/8lcv2wEGl6+4VBcBxfSFE5+COE+JNeCCS+zo+/JJauf8P8mKGBFf7K7z1Aq/GSX5SlVu3oJE+LeuXWxvHQBDaUCgS9ezRGw8r0/sEljj3As8fftM7PxSLGffm/2b7AteoI5jMjQuWVw6t2F9+MQbm+hIJylleL4lZ8KXV8a+N6fVMpxJr7H7BAh/Nk3uXIJL5KLrJvk2+sBeQ3PkgMz6aYXA6YHPMbaA7JW83VONQ== Received: from DB6PR0201CA0037.eurprd02.prod.outlook.com (2603:10a6:4:3f::47) by DB8PR10MB3689.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:10:13e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.16; Fri, 9 Dec 2022 10:35:58 +0000 Received: from DB5EUR01FT094.eop-EUR01.prod.protection.outlook.com (2603:10a6:4:3f:cafe::51) by DB6PR0201CA0037.outlook.office365.com (2603:10a6:4:3f::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.10 via Frontend Transport; Fri, 9 Dec 2022 10:35:58 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 194.138.21.76) smtp.mailfrom=siemens.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=siemens.com; Received-SPF: Pass (protection.outlook.com: domain of siemens.com designates 194.138.21.76 as permitted sender) receiver=protection.outlook.com; client-ip=194.138.21.76; helo=hybrid.siemens.com; pr=C Received: from hybrid.siemens.com (194.138.21.76) by DB5EUR01FT094.mail.protection.outlook.com (10.152.4.184) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5901.17 via Frontend Transport; Fri, 9 Dec 2022 10:35:58 +0000 Received: from DEMCHDC8WAA.ad011.siemens.net (139.25.226.104) by DEMCHDC8VSA.ad011.siemens.net (194.138.21.76) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.20; Fri, 9 Dec 2022 11:35:56 +0100 Received: from L15-Gen2.fritz.box (139.21.146.184) by DEMCHDC8WAA.ad011.siemens.net (139.25.226.104) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.20; Fri, 9 Dec 2022 11:35:56 +0100 From: "T. Schaffner" To: CC: , , , , Tobias Schaffner Subject: [PATCH v2] expand-on-first-boot: wait for udev to create symlink Date: Fri, 9 Dec 2022 11:35:40 +0100 Message-ID: <20221209103540.13429-1-tobias.schaffner@siemens.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Return-Path: tobias.schaffner@siemens.com X-Originating-IP: [139.21.146.184] X-ClientProxiedBy: DEMCHDC8WBA.ad011.siemens.net (139.25.226.105) To DEMCHDC8WAA.ad011.siemens.net (139.25.226.104) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB5EUR01FT094:EE_|DB8PR10MB3689:EE_ X-MS-Office365-Filtering-Correlation-Id: 8f2e9ad3-2f2a-4988-1af5-08dad9d128cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GvMm6RtUjv4SbNTdZQJAnbtR3My+E9YuvJAqgJOrepFmtcldn+CEMYcLY++LGB+2ojpZ7ZpNjnSYwKl6gv6Cakw+hvUq+VvhbMehENFnglnl+7p6Bt9uImX3DNIwMPd8aEAerpFU0lzR47+7edf0uqqB0W56RIR0tSJA16AaCvOg6PeqPxnyFyxhkq7nheUZM3VKXsOZscKUUvoxAE4eSyojW4UMfyidxDo36Xrkcfepvk2A5a9xgA0WgcL8j/49R1cgEBD9PSP1n5IjeBfv8DYHfGO1fJhfK90ji35g3orSnME49US0xlZRoRtq2tffe2/k3ShumEk3oDZwBa2LjoC1RX1KF8wJlLgmx685ZR3Yl5uzwGuwyATkyh0vR3lyn6wihwNbs12fuWN3vTUo8k5yZptlLIj1Vy6HHzqZlLzbk4K7yZEsnCaB6CfwXqXSO/nMheMgIM9DQ7YaSCH9y3ri4TpuXIm2inGa5Qbt7+K6spXYc1SSVt8MEopdj7B0uZ7dgS9vUr7TbjMGnYn0he+d1pg5KL2saAbmc1h7dnKGTapdU/e2EnAZzUBhbBorwt0fmSDSXQT8vBAB+19mH1vR98UnEPcmx6H3Ud6LMqgSLlH/UXDbSjcgvua+dlcrttFY3TP2MjCoAvyFi6y37/9jmNlpvmTM2jlFdmtHGq8OsviOmkrBtRRQd6F8XoOXu8qmLW/He55hJTt+hvfZKDh9Hp7WIvYvfw92mXVUe/E= X-Forefront-Antispam-Report: CIP:194.138.21.76;CTRY:DE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:hybrid.siemens.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230022)(4636009)(39860400002)(396003)(376002)(346002)(136003)(451199015)(46966006)(36840700001)(40470700004)(478600001)(47076005)(8936002)(26005)(8676002)(70206006)(70586007)(186003)(4326008)(36860700001)(40460700003)(16526019)(86362001)(336012)(82310400005)(1076003)(41300700001)(36756003)(2616005)(956004)(83380400001)(6916009)(54906003)(82960400001)(40480700001)(6666004)(5660300002)(81166007)(356005)(107886003)(316002)(2906002)(82740400003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Dec 2022 10:35:58.1487 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8f2e9ad3-2f2a-4988-1af5-08dad9d128cd X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=38ae3bcd-9579-4fd4-adda-b42e1495d55a;Ip=[194.138.21.76];Helo=[hybrid.siemens.com] X-MS-Exchange-CrossTenant-AuthSource: DB5EUR01FT094.eop-EUR01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR10MB3689 X-TUID: tzQ8RFTp/vYv From: Tobias Schaffner systemd-growfs depends on a symlink to the partition of the filesystem that should be resized. This symlink is created by udev in /dev/block/. If this symlink is not yet created for example because systemd-udev is not up yet systemd-growfs will fail. We could use Require and After to depend on the systemd-udev service but this could again create a race condition if udev is up but not fast enough after the partx -u. Run systemd-growfs periodically until the symlink appears. --- .../files/expand-last-partition.sh | 30 +++++++++++++++++-- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/meta/recipes-support/expand-on-first-boot/files/expand-last-partition.sh b/meta/recipes-support/expand-on-first-boot/files/expand-last-partition.sh index 57055cc..c5f96ec 100755 --- a/meta/recipes-support/expand-on-first-boot/files/expand-last-partition.sh +++ b/meta/recipes-support/expand-on-first-boot/files/expand-last-partition.sh @@ -79,7 +79,31 @@ if [ ! -d "${MOUNT_POINT}" ]; then exit 1 fi +# Send message to stdout, unmount mountpoint and exit. +# $1 The message that should be send to stdout +# $2 The mount point that should be unmounted +# $3 The exit code that shout be used on exit +growfs_cleanup_and_exit () { + echo $1 + umount $2 + rmdir $2 + exit $3 +} + mount "${LAST_PART}" "${MOUNT_POINT}" -/lib/systemd/systemd-growfs "${MOUNT_POINT}" -umount "${MOUNT_POINT}" -rmdir "${MOUNT_POINT}" + +# If systemd-udevd if not up yet or was not fast enough the symlinks in +# /dev/block/ might be missing. Retry in that case. +# This retry logic is only needed up to systemd-version 252 +for run in $(seq 0 50); do + if GROWFS_OUTPUT=$(/lib/systemd/systemd-growfs "${MOUNT_POINT}" 2>&1); then + growfs_cleanup_and_exit "${GROWFS_OUTPUT}" "${MOUNT_POINT}" 0 + else: + if ! echo ${GROWFS_OUTPUT} | grep -q "^Failed to open \"/dev/block/.*\": No such file or directory$"; then + growfs_cleanup_and_exit "${GROWFS_OUTPUT}" "${MOUNT_POINT}" 1 + fi + fi + sleep 0.1 +done +growfs_cleanup_and_exit "${GROWFS_OUTPUT}" "${MOUNT_POINT}" 1 + -- 2.34.1