From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7059736144635756544 X-Received: by 2002:a05:6000:1a50:: with SMTP id t16mr1958815wry.571.1643972680365; Fri, 04 Feb 2022 03:04:40 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a5d:694d:: with SMTP id r13ls69528wrw.3.gmail; Fri, 04 Feb 2022 03:04:39 -0800 (PST) X-Google-Smtp-Source: ABdhPJyMVc7u5X12cxgsu5xO/ef+hSlslXj/d7DBCPlmJNFbTJ/IYItkouQxgUNB5Nse34hyxzQu X-Received: by 2002:a5d:534a:: with SMTP id t10mr2067385wrv.285.1643972679367; Fri, 04 Feb 2022 03:04:39 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1643972679; cv=pass; d=google.com; s=arc-20160816; b=dLqnpYKuqZ0YxI+uIoqtevZw37FSP3rShc7xUsVX9KLuj+KDb2/4YvLL90bSkS3Iu9 OncO14sCIZc9i9MHNJ3KIxsE7/rXG2TI5lPVhywJZbnSA/EquKTbwFZnd4iWcmD9dpgs jrflwI5/WedG3Urc/UrzdzVMT2RP3QdnRBYSEICc6BTJTEs3sgx+MLtA0d7FIvLJt+Ww 93oXusTU2Z0Di5OeyVAzjKGBWJllrXVGC1Ua646Px5l6r4eegMTvIur23X+Dr+/I7Fcr +NWA9+NqASL4X4QHxM9jrksxCyconAomfbCV3jmxx2YRZXw+A6/+s78jZ2rOBe+VE9iL n4Hw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :dkim-signature; bh=kmn5VCD24FZLElD6Qd7dJC2o60+HTkpnfWmeuph8cLU=; b=akvpf3utXqDEEv6enDj0UzI1LVPidphAAv07Y0celRFtyY41XU0Bqd6pAb4F/YuEGF qAhfMZVUlQSl0KRmbGTlbrdc1RpsTPJqGT6NbLX4pFGFAOW6YC9I8Qys41B+AASPmRAX P28NIwUi8yL1UwAt8a5SUbPJWq2bIbI+/lOfbbQB4qxnzTLWwocPIBC9/ybUL7UHG2Z3 PY6QlCbaAKtD0O5s0B/VEmFXzkQ9x+Xuwb4BBWtZTZA3hAAC88k2R28F5xkR0U9+AS77 8RcxP6tJ39GgRaeUOpz0nGCERaPMQGuQHfFjCSZPwATo5ONn7mpELAgqyKX/7SMqRMSS AXkA== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=TiSIwGSE; arc=pass (i=1 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f400:fe1f::62c as permitted sender) smtp.mailfrom=jan.kiszka@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 l24si300767wmg.1.2022.02.04.03.04.39 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 04 Feb 2022 03:04:39 -0800 (PST) Received-SPF: pass (google.com: domain of jan.kiszka@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=TiSIwGSE; arc=pass (i=1 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f400:fe1f::62c as permitted sender) smtp.mailfrom=jan.kiszka@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=U/IjKvxvfjxJvW2u3ehHEHbK+F+R60PXrmV7/xRQ/LW1d9Bk3KaHFlaVp6UKKYB3OrBDUNe+yg2iTU4BP4e4qEwj+fOY4F3lGrIMeIIwBJiVHohN+rA58Lekc02YzKBL0Ssh3rTkBNLefBrLA+1nic5FSReCBemfXuOGejkiYV765Oc45aXKXSCkN7rrMY04MEIbH8VeF8sQNwac+QfTi+gF/nVqHnJUq+qJEjGsr7rgLpj/lS8S8QDWW2DErAhwKS7tZyDS9BsjmJG0EvAqgqFrbpE6N57z3qXDgK1A6OeErLp5AHL98JulaJsaJVLsewKMgCL0xzSYxP6LLGrvmQ== 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=kmn5VCD24FZLElD6Qd7dJC2o60+HTkpnfWmeuph8cLU=; b=AM3BWN4eVO8dSRBTAHF0Gf+vT7tjopSJpz3cuxEZXFHE0w5nGjSqZ24f0iYOCm9Iitr8FSBZr4yYcs9O3sFF7Dt3EIzu2niO0XPT8tDjE9Q9OhGgDRrpBiOq1u4WS6O085HQXmI6g8bGLihgNkpjoPyeuiLnaYCyOBxD6tk6lfd6cQwRZrQObVaKlLNrkHThBzL/uKW3CxDl56b7NUZfv6MJ8m/8bFsZ8v6O6bCISJTCyLi/4np2HWw9Rm9s+krPDzxLK678GWCXNeVbxRtOs/1cP21n+AeGeNAHX6jF51ogUTeDcSsSc50F0slESaTngyv9iut+7HJMoh9ipGRitg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 194.138.21.73) smtp.rcpttodomain=mentor.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=kmn5VCD24FZLElD6Qd7dJC2o60+HTkpnfWmeuph8cLU=; b=TiSIwGSEPAjLaYsxsyH0mo2ufPTZlblsdGqOxIJDujIrGBdgYUzw2+ag66+6LAg5Dwzn1wObXgDYSakbZnwpyCYVblk5Wrlh1XLElClNWPlcdwwTTdjcgVQiXulfo8TfW+9pBUs6CiujQIJxHjkZizcQTng8pIstd2NRjaKXrxAoJud6BSyzGePcSad+91Y6G9PgzJCQ98d1+WyLP4xKeP5YhB70yW6JCFI9UTFuxQHuWdQRI8LdKRulQ1iNKMjy/GW6JZ2Rn6/xdJ66kBJjgCU8aCeB+E6ugtC9FniByVDBjW5DxhLcc+dhW0feKahh9bPylxa7oMYe7OhB/vKwXA== Received: from DB3PR08CA0034.eurprd08.prod.outlook.com (2603:10a6:8::47) by AM7PR10MB3271.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:10d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12; Fri, 4 Feb 2022 11:04:37 +0000 Received: from DB5EUR01FT024.eop-EUR01.prod.protection.outlook.com (2603:10a6:8:0:cafe::df) by DB3PR08CA0034.outlook.office365.com (2603:10a6:8::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.17 via Frontend Transport; Fri, 4 Feb 2022 11:04:37 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 194.138.21.73) 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.73 as permitted sender) receiver=protection.outlook.com; client-ip=194.138.21.73; helo=hybrid.siemens.com; Received: from hybrid.siemens.com (194.138.21.73) by DB5EUR01FT024.mail.protection.outlook.com (10.152.4.236) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.4951.12 via Frontend Transport; Fri, 4 Feb 2022 11:04:37 +0000 Received: from DEMCHDC8A0A.ad011.siemens.net (139.25.226.106) by DEMCHDC9SNA.ad011.siemens.net (194.138.21.73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.18; Fri, 4 Feb 2022 12:04:36 +0100 Received: from [167.87.72.47] (167.87.72.47) by DEMCHDC8A0A.ad011.siemens.net (139.25.226.106) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.18; Fri, 4 Feb 2022 12:04:35 +0100 Message-ID: <6e0eeb9c-3b5c-228b-f6dd-0fb7334b4c10@siemens.com> Date: Fri, 4 Feb 2022 12:04:34 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [PATCH v3] dpkg-base: resolve DL_DIR in do_adjust_git Content-Language: en-US To: Cedric Hombourger , CC: Cedric Hombourger References: <0a7f590d-63f5-5505-a9c9-718f9d8c81fb@siemens.com> <20220204105418.30167-1-Cedric_Hombourger@mentor.com> From: Jan Kiszka In-Reply-To: <20220204105418.30167-1-Cedric_Hombourger@mentor.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Return-Path: jan.kiszka@siemens.com X-Originating-IP: [167.87.72.47] X-ClientProxiedBy: DEMCHDC8A1A.ad011.siemens.net (139.25.226.107) To DEMCHDC8A0A.ad011.siemens.net (139.25.226.106) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d637741e-ae70-4d95-7dd4-08d9e7ce2261 X-MS-TrafficTypeDiagnostic: AM7PR10MB3271:EE_ X-LD-Processed: 38ae3bcd-9579-4fd4-adda-b42e1495d55a,ExtAddr X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jP0C2crJJNlxsiwHnvnQii2iOcqYy/1+lOodKpX1Odrm0Ro6/lJAOQIdvtK4z4SIbcMtC8gByLPxy8wOHvdygHETydYz87ZusxF/OAVC2K1K8SHLHzLjxeK+kYzWZvSUpM7i5uDymdlzIJW/wSyqvWRBJc4vQlgXxrKNSNKUMlTiMQV6mRZAOpTnruLmKbyYEbDAkTXYr0sVbRjbFayv2ZHfGpBrScQVqWUcIwf3/aLmiZF58e7IKb7/v+xgQ5bcC1yrV0teP5W7cKh/lz1fir6szKGc9UYIL5vteaf7A0RaDl4iq4KAkBKcIubr2aOBXlF7RpNjP56rqTDrtKIa2hNzEG7YQXyKurkWOm/cXcu8p2dQtuJGLMrlTMtsDN/3PdSib45+ErrRFW64dv9v6KBs38vnuWwVxK1vnvJYqJORwYU0I3f6w4i2vzhRjqmZIDOU1qy/EYFxfXpzPFeoHNCmACyTLZFyH3pdLBiD138szCyY6pzl2LNKWCO/w652UiwvvQs2wV7Zt7mwklSMeEAVFsvZtaJ9HfpsJHYVksuKo64CoxmuOsPG2pAX5vcdVyyI5W/LTCdKOhHRErkOfjIHlwa10xBDWTgYO7eOScmVeOj6iSztce/dyrf/TYGzbXxSE3Bze5dVqCTiYpZ41RS92MRfFjGn7nRpH3+hxiez8ceyK8sy0frvQB0onbMuT0ZzimNUXaEvuRzKSfsThEc0D0/0M0GZoP4CG+k6jpIbToZ3JvhCEf7YHjqypk+IPZOGJkD3soie4jouQr23ug== X-Forefront-Antispam-Report: CIP:194.138.21.73;CTRY:DE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:hybrid.siemens.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230001)(4636009)(46966006)(40470700004)(36840700001)(4326008)(86362001)(8936002)(508600001)(70586007)(47076005)(31696002)(53546011)(8676002)(70206006)(316002)(16576012)(6706004)(36860700001)(110136005)(356005)(81166007)(31686004)(82310400004)(956004)(82960400001)(336012)(83380400001)(2906002)(44832011)(2616005)(36756003)(40460700003)(107886003)(16526019)(186003)(26005)(5660300002)(3940600001)(36900700001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Feb 2022 11:04:37.5015 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d637741e-ae70-4d95-7dd4-08d9e7ce2261 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.73];Helo=[hybrid.siemens.com] X-MS-Exchange-CrossTenant-AuthSource: DB5EUR01FT024.eop-EUR01.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR10MB3271 X-TUID: lqhpGJcqaXd/ On 04.02.22 11:54, Cedric Hombourger wrote: > From: Cedric Hombourger > > git_link is resolved using os.path.realpath() but git_dl is not. > If DL_DIR points to a symbolic link, the comparison will always > fail and do_adjust_git() will attempt to re-create the symbolic > link. Resolve DL_DIR for a comparison between resolved paths. > In the event where paths do differ, the symbolic link needs to > be deleted first. > > Signed-off-by: Cedric Hombourger > --- > meta/classes/dpkg-base.bbclass | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass > index 2add0b2..258e040 100644 > --- a/meta/classes/dpkg-base.bbclass > +++ b/meta/classes/dpkg-base.bbclass > @@ -20,9 +20,13 @@ python do_adjust_git() { > rootdir = d.getVar('WORKDIR', True) > > git_link = os.path.join(d.getVar('GIT_DL_LINK_DIR'), '.git-downloads') > - git_dl = os.path.join(d.getVar("DL_DIR"), "git") > + dl_dir = os.path.realpath(d.getVar("DL_DIR")) > + git_dl = os.path.join(dl_dir, "git") > > - if not os.path.exists(git_link) or os.path.realpath(git_link) != git_dl: > + if os.path.exists(git_link) and os.path.realpath(git_link) != git_dl: > + os.unlink(git_link) > + > + if not os.path.exists(git_link): > os.symlink(git_dl, git_link) > > for src_uri in (d.getVar("SRC_URI", True) or "").split(): > @@ -34,7 +38,7 @@ python do_adjust_git() { > > if os.path.islink(ud.localpath): > realpath = os.path.realpath(ud.localpath) > - filter_out = os.path.join(d.getVar("DL_DIR"), "git") + "/" > + filter_out = git_dl + "/" > if realpath.startswith(filter_out): > # make the link relative > link = realpath.replace(filter_out, '', 1) Looks good and was surely an untested case so far. It's actually two fixes in one (os.symlink != ln -sf...) Does this explain your "race condition" from before? Jan -- Siemens AG, Technology Competence Center Embedded Linux