From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7174822613449965568 X-Received: by 2002:a2e:aa93:0:b0:27a:24b:a9b3 with SMTP id bj19-20020a2eaa93000000b0027a024ba9b3mr5157667ljb.391.1670518567588; Thu, 08 Dec 2022 08:56:07 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6512:2012:b0:4a2:3951:eac8 with SMTP id a18-20020a056512201200b004a23951eac8ls991724lfb.0.-pod-prod-gmail; Thu, 08 Dec 2022 08:56:06 -0800 (PST) X-Google-Smtp-Source: AA0mqf5JT2p5q9WbwKRQKPpi2X3bCWQ13k6blC/QSmwaQ3Y4Bm9bl4mqSnTbxITMIIeio8CLE0dn X-Received: by 2002:a05:6512:39c2:b0:4b4:e4a1:2fc6 with SMTP id k2-20020a05651239c200b004b4e4a12fc6mr934664lfu.68.1670518566318; Thu, 08 Dec 2022 08:56:06 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1670518566; cv=pass; d=google.com; s=arc-20160816; b=Oc191jsEmmWAB0pj/bNaHNoHyrMhEk57on/flxJJzbkbau9Net8QR+8URr4+W+dzKJ G/6Wthizx752i+Zy3USI1XvojoURlmPxHaOxP+1Eu8cXG9g5FXY9tVYT7VCKm4qzcIqu vHAOEdlsNv2hJs5FMOIPUHRgWse9dEj6XZRFnSuJjhqENOggETbVqDvKCj/+WW8WYAsy utRAwmziMArdfEbBiZJfripKS65+pmIZH6UwQdUtZjb0YP1CMSO7EZ4v7MnlqINpqGgK eDpqy/bv464Txbyvl0PmkedduKWHkpB16vWWUEtRCMNbg0Vp0TPZSpTzuk5ZdjcU0Ney xn0Q== 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=F1rtHmQYir4pR4zkvv1OChvRt7ouv3ot/gsFryVmE0Y=; b=D0MtMHcxzuvmYTcjh3oCW6WRFqHi1x4OYUYzd24bNcZFFajK/Qy1gVPfauzvxDpVXx YG96oy4h0/PPcaHF1CTcPMvRSSN2ArIpsfJhtqi8pU2y8HtGI/5cP7UY3X3TdgzU+/U4 fJ1WmkdoVRfa2/iEez7e0HpJJAxD4ZZfZQ9kYJA2+HVw1zqbmXpuvpAClXWA/HZnFKmV tebk0NOzNOkaXrf74n8VVJdEDV1FcOr7a/Z65bG8kv+AD10bqsMerYUfLLMWUQBPrunP UecjpQyT+AYC2f99ETY5ooEY7UAkCCmEQtzqKmA1bTMH8sWaBmxevh2upMl/0DUfrpSi p9/g== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=WBbp4Jgg; 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 2a01:111:f400:fe1f::62c 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 EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on062c.outbound.protection.outlook.com. [2a01:111:f400:fe1f::62c]) by gmr-mx.google.com with ESMTPS id w14-20020a05651234ce00b004b58f5274c1si313382lfr.1.2022.12.08.08.56.05 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 08 Dec 2022 08:56:06 -0800 (PST) Received-SPF: pass (google.com: domain of tobias.schaffner@siemens.com designates 2a01:111:f400:fe1f::62c as permitted sender) client-ip=2a01:111:f400:fe1f::62c; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=WBbp4Jgg; 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 2a01:111:f400:fe1f::62c 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=HxDaXLF10eUVYItZD+0xbxo8Xap2gWORoLnpJ4uQ0Ga6coGDNgOndIQiOE81if6D+1a+99u41YINccMetORawaV+YdbcUD+J2ingcIn3QJoCrCNH0OmLm/uTkHz7bWx15a/l9Sd3Zaa40pbAgZxRJPf8QHpEth8MhCgjG9P/E7akGV6RUFHLa5h6MAiCU3zqjHU0RU5aXJZG09KYkHKFQ343L6Pu8u/pZYdl1iceqoi4KlSX2QacuXReOHPcU8FRN/KSUDYFUCf6A4qPQcMYZSuqooYAtosAK5mLtLBE0pUPSTSwZLIc4ygRxmkcS+pyJsG+AlwCepSXAZ5bOF41rw== 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=F1rtHmQYir4pR4zkvv1OChvRt7ouv3ot/gsFryVmE0Y=; b=WjngzczZYl84r9IDfuBLg4hvalePV0HuubNcRoiyiJe81dd8UWG1o32YceQU9cSc8pWnvEhPOGgpfgFtsKtOZDh1NeclmO8Dycu8wEHk+AaRwvdDjOmsXpQCmYlcEPHg2f/nvxUW2XY981flL5CATwr9QfrFTGuIxpW+/vORHywyIViayycA38sFPRsRfFMGxE07IeAF+ZS5SP6vsZBL1bmKod1YnF02tpD2qZpTimwVMV3kAvwTNqRBzB7G7Sq0VBmJ0aKOqNhvMC7XZazDPRtWP4AGchcaiREFjE6CwdbIkHn/9xFamk65+aVbTPsZ1213jJMUZx+UtMrEqwNVJA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 194.138.21.74) 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=F1rtHmQYir4pR4zkvv1OChvRt7ouv3ot/gsFryVmE0Y=; b=WBbp4JggWm+9BdX9gKb7sf9dYBUrkP5F9bkkAw9ph4j306viIubBKEQpeFbD8EBs8y84WYem97Y4jYh/Fc5GuT9Ef7ZW0s2QP/OrB0VL4VsnsHbLVLWCslyi+mvP8lbgoTOyTcaZlBB4DIP2CV1WQMNh5ZXqvwG3ceOQJZCUItVGW8yBKIY71n2I6mnQEOKPqdmPRV6YnobxlRpHN+RYV4AU5Sa0duWlV6uoiwd1/1K2cgjrAoMl6A+93wfEd6P2BIbykM55FS5X3oJXR/coua0NLgH6pJn8BRC89UcQgWCfeCNVMVkCD5P5+l2/AXP9cXeOG80DVyY5C8C2ocvv2g== Received: from FR0P281CA0112.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a8::11) by AS2PR10MB7903.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:647::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.14; Thu, 8 Dec 2022 16:56:04 +0000 Received: from VE1EUR01FT057.eop-EUR01.prod.protection.outlook.com (2603:10a6:d10:a8:cafe::3) by FR0P281CA0112.outlook.office365.com (2603:10a6:d10:a8::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5901.8 via Frontend Transport; Thu, 8 Dec 2022 16:56:04 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 194.138.21.74) 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.74 as permitted sender) receiver=protection.outlook.com; client-ip=194.138.21.74; helo=hybrid.siemens.com; pr=C Received: from hybrid.siemens.com (194.138.21.74) by VE1EUR01FT057.mail.protection.outlook.com (10.152.3.152) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.10 via Frontend Transport; Thu, 8 Dec 2022 16:56:04 +0000 Received: from DEMCHDC8WAA.ad011.siemens.net (139.25.226.104) by DEMCHDC8VQA.ad011.siemens.net (194.138.21.74) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.20; Thu, 8 Dec 2022 17:56:04 +0100 Received: from L15-Gen2.fritz.box (139.25.69.126) 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; Thu, 8 Dec 2022 17:56:03 +0100 From: "T. Schaffner" To: CC: , , , Tobias Schaffner Subject: [PATCH] expand-on-first-boot: wait for udev to create symlink Date: Thu, 8 Dec 2022 17:55:42 +0100 Message-ID: <20221208165542.2451856-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.25.69.126] 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: VE1EUR01FT057:EE_|AS2PR10MB7903:EE_ X-MS-Office365-Filtering-Correlation-Id: 4f163e0e-8037-4e39-a192-08dad93d17fb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VIPngYHUbm781OazJ0vxn9K4J1qotIVMMPHQOiveEC9Hfh6rz4+o8Vg+3J1NGDKQhk8XujJNQ07aSxy1cuAneZ9MhaE4eEx5/SOXz/yn2w5mqpNuqpbMR+S0vmvGpbRD4YTHwH2YVg4cyAy5YjrFX2QuZ1ozAx0o/jrqJEb5B8K6G+AWhcQ+p/FCyKBicYeE1XLJ6at8Ll2W1x1JSQp2XhUo7ncLsLyC4+RsPatf5yV7JrtzZVOXjWfloFkrKxHAU+m/ulS8D5h8gOovcnaL+4yt68mPDQDda+ZAeWJSjzLtVrK7hqLTHJvrgB6l/e0Ak/YgjOM3pgde2iOWz2HxkTQ+980MfrVDOcv71sZK/R+LRgHz2TJ4vAW3J+iNLf0rDjL3apJ2o5QoMYlSw7Ez8oJT0NbBkFiBnhyeZqkRa8ynQRYZUUNw21WiKq1o+TI+Tp7WJ1/2EuEF2LR5ifaS+8bz6Z6UMxpW8vfxQallX991HE2p0TUvVJ2hwZuDXfe6sLb3WVtbrBHtC0Wt/vy7fpMEKsMzPa45qBwFpGR/lKDORsenEVbkSu5FrC1u5H7bHwjpjFQ4wDxXigzB4Qcn3knZGkAN/LM6jJtvD27AuKh8bwncU3TmH8zaijRjE/QmabIM7dp1yx2zLhDARpmV8omZKYg57RZthstlKMSG++crGJporNC04DEsyCSVCPenWLzhgrY2FIzKTq/BwCCLog== X-Forefront-Antispam-Report: CIP:194.138.21.74;CTRY:DE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:hybrid.siemens.com;PTR:hybrid.siemens.com;CAT:NONE;SFS:(13230022)(4636009)(376002)(396003)(136003)(346002)(39860400002)(451199015)(40470700004)(36840700001)(46966006)(956004)(8936002)(1076003)(83380400001)(2616005)(7596003)(16526019)(86362001)(41300700001)(2906002)(8676002)(336012)(186003)(4326008)(5660300002)(40460700003)(7636003)(36860700001)(40480700001)(6916009)(478600001)(54906003)(82960400001)(82740400003)(356005)(82310400005)(70586007)(70206006)(6666004)(36756003)(316002)(26005)(107886003)(47076005);DIR:OUT;SFP:1101; X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Dec 2022 16:56:04.4320 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4f163e0e-8037-4e39-a192-08dad93d17fb 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.74];Helo=[hybrid.siemens.com] X-MS-Exchange-CrossTenant-AuthSource: VE1EUR01FT057.eop-EUR01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR10MB7903 X-TUID: DibArtgllOQf 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. Resolve the symlinks in /dev/block/ periodically until the symlink appears before running systemd-growfs. --- .../files/expand-last-partition.sh | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) 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..7ebb3e5 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 @@ -38,7 +38,8 @@ if [ "$DISK_SIZE" -lt "$MINIMAL_SIZE" ]; then exit 0 fi -LAST_PART="$(sfdisk -d "${BOOT_DEV}" 2>/dev/null | tail -1 | cut -d ' ' -f 1)" +LAST_PART_NAME="$(lsblk -l -o NAME "${BOOT_DEV}" | tail -1)" +LAST_PART="/dev/${LAST_PART_NAME}" # Transform the partition table as follows: # @@ -79,6 +80,19 @@ if [ ! -d "${MOUNT_POINT}" ]; then exit 1 fi +START_TIME="$(date +%s)" + +# Wait for udev to create the symlink to the partition in /dev/block/ as +# systemd-growfs depends on it +while ! readlink /dev/block/* | grep -q "${LAST_PART_NAME}"; do + sleep 0.1 + CURRENT_TIME="$(date +%s)" + if [ $(( CURRENT_TIME - START_TIME )) -gt "5" ]; then + echo "Could not find symlink to last part in /dev/block/." + exit 1 + fi +done + mount "${LAST_PART}" "${MOUNT_POINT}" /lib/systemd/systemd-growfs "${MOUNT_POINT}" umount "${MOUNT_POINT}" -- 2.34.1