From patchwork Thu Dec 8 16:55:42 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tobias Schaffner X-Patchwork-Id: 2279 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 08 Dec 2022 17:56:20 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lj1-f183.google.com (mail-lj1-f183.google.com [209.85.208.183]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 2B8GuCX8010926 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 8 Dec 2022 17:56:13 +0100 Received: by mail-lj1-f183.google.com with SMTP id o18-20020a05651c051200b0027a0ee63d4asf587246ljp.21; Thu, 08 Dec 2022 08:56:13 -0800 (PST) ARC-Seal: i=3; a=rsa-sha256; t=1670518567; cv=pass; d=google.com; s=arc-20160816; b=Tfx61LJeEuBhJtxynenyL0ZYqRKRlOu16X3nwB8oOHuYmnv4FYhKrPOKdRJF/VApcU +tk4yOeYFV7MffjDlo3d8NCxfG+QOF+RxHAVFETHfNwqxrSAaxVb9r+j8SLSeiMDJ5Jp uB/vgpRmolbggfQqcpzNtw0vcuqcxEPnjf352y8xJTfNetEjeQQWPU5v3XlQMCiNiZBU 9ZMrKOhDZ9/mRaOljMLTni+fn7GYLy7L0t7PxocTw8X38iZyzZECyAmLbY6JMOBOsCUx WUAK9pMk1JAvPRGnrQoI6YxGRDML2QfiJo0kdb85hwJct5rUs7FNSJULDjIIh4Xag5o7 4rdg== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:mime-version:message-id:date :subject:cc:to:from:sender:dkim-signature; bh=E91E/wCt636BJJ+z4KjHdzN/cb7TDbSYvSNZVhZoPX0=; b=G+z/qVyb2O4Pzzd/zIKINgJGuJ8sof7T/Y4mZ20vKtqYE8EDMQxfOpKwuz+JBXuLEG jz9TnEFEdiDXIFvQsHPFLoM+rh52BFnVVWqhlU0DoznEcaF4sozcykj2GAbbsj4PszrC 704KNeoXA9nqdIYuUCGBkLuOeWkgUmpyAyR+l9rRPXQNSunKklD9OXB+aQh7emEqXLgz +Tz0ljl0RPq7IWL+Ah2ZFHwfqa+157wPrZL3XKHnW+G1+ji37mzVfgMs5HXSTaqg3On9 F40RV/MvOPOpzf8SWROGB/0HNxVgJYIhbeC5+8ALXSC6KQxEtMcr+dIUHfIAc2Ck22O3 0jlw== ARC-Authentication-Results: i=3; 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20210112; 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:cc:to:from :sender:from:to:cc:subject:date:message-id:reply-to; bh=E91E/wCt636BJJ+z4KjHdzN/cb7TDbSYvSNZVhZoPX0=; b=sJzM2X9GxF0mJhqs+nRWGo25ETwuWgkj8hfakCIPsq9DqV/3jxzudole1UsREO9UFv R7wLxsDTHnHeUXbe9Dzg6Tt9xcmSYbEbThuKLXytcAahucRO3Tzib4Yr43oVpS/xE1TZ 6ZRa4/X7wAMgif62qL9a3TXLS9CJaGj+cRQSnf2CCrYbEKht/5wtChMerM1WtajzYtrG 5txV/iBSC+xa++IwZLQTR07DHh7bgXzfFDp8rwYN1SA+BbliLTE03vvk4dLEtm7Lfb4v DCq/DRJSw1pJZcyUZYewtooN8vAyEOMSrII50+wlxioBC9oz5Pnyq1yDyn0c8lu5hQb9 ggtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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:cc:to:from:x-gm-message-state:sender:from :to:cc:subject:date:message-id:reply-to; bh=E91E/wCt636BJJ+z4KjHdzN/cb7TDbSYvSNZVhZoPX0=; b=30184DwaCG5oKVASCQVo+EJYbYK/n4eGrn21gVs86RVtzNbxJBKMV/O1KTzrwDsXwk bLmqDd4pc4etFdfdby+59kLwyriOK31Uby7uC7ggguJqv899munvGnomMmyLkxvABaj8 dAJh+dBdhMt79I8mkAgDHfJ2HVVtOlPxw6OfbTfQ8Z7u77jWLuacqVKIExL+ezefGHFA hZYXnKgOmQs5DFiu0wSr4sxIS7TxrXmEWblNxfBY1KTX0DDJTXs5x5yDCGiiChby20Vs R9rPOoSWv5+XFrv27Ti1ByxT7kRyGpQFnhEcRq5EOiWkfw+Oq4/7RPG3CadwH7kTCeAN 2Z3w== Sender: isar-users@googlegroups.com X-Gm-Message-State: ANoB5pmKRWCiXuX2wytM4G3ZsOYCxkp07xK34q8T3gQPr5PqmT2AdJBL r8758LoR18P2v5dyXuJPHF0= X-Google-Smtp-Source: AA0mqf4wVONa9r0J8ddggUphK2ZIvg6MYZiQr5TSXYP9ZPBPzBXIPGgAqe3LODxSfD0hah3MDaE+Fg== X-Received: by 2002:a2e:b108:0:b0:279:c41f:c538 with SMTP id p8-20020a2eb108000000b00279c41fc538mr12008900ljl.77.1670518567520; 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-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 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; 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 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 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-Original-Sender: tobias.schaffner@siemens.com X-Original-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 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=-0.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,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: 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}"