From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7194774660571987968 X-Received: by 2002:a25:ade6:0:b0:7b4:68a1:cb38 with SMTP id d38-20020a25ade6000000b007b468a1cb38mr370016ybe.21.1675261658760; Wed, 01 Feb 2023 06:27:38 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a0d:c746:0:b0:519:ebb1:f8ec with SMTP id j67-20020a0dc746000000b00519ebb1f8ecls4689410ywd.5.-pod-prod-gmail; Wed, 01 Feb 2023 06:27:38 -0800 (PST) X-Google-Smtp-Source: AK7set+mfmBqqQjw8T2eByfYMPSVv/DiDjAWBHwkgdBZHDsiwvnLwxgK8NL47kuD8rBbEzV36T2X X-Received: by 2002:a81:1cc5:0:b0:50f:90e2:7a34 with SMTP id c188-20020a811cc5000000b0050f90e27a34mr1473664ywc.16.1675261657939; Wed, 01 Feb 2023 06:27:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1675261657; cv=none; d=google.com; s=arc-20160816; b=w7WK0nv3nXTEkShgEAAKgxB+9vOpkF/CMVcunPaKfrEQuoYCdT7EwNZhtO3GZASW0B a76NbYkP00L4Wx6z9DWjU+UxZXXw4jwDOo2Dy5tFvWZM4M85dZqEzRh1YId8rqZ0r9lx Y4GCQpTszHvkkJNfbpmge2l+G85NWfBZTTldUSbfNdfl9sfyTMO+vHU7o1Js5ETrQIZK 4sbhMVwkk8MJ7UQfmYgo6c7uvYtRU0HKfzbn0RVVJNBOoaEqKapRJlRh4nYdU/fbKMNV TVCQfv233Q6Xz7Cp9x/dGb9exZKHjpRrYAMkLjeGxTuv6A55sPZNnuLnFB9aNcKw6wmY fqOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=Z75lDVJjCzWPVG3nqW9aSxdtd5CB/Ft1B7f3Y4PAR74=; b=kuVlsUpRkGZoxTI7PtfTwV65ITiAzWd7U/AKC6/MsutC5EKbCcdq0+f8UP+UeMFZ1I k3Pb5YojtiEfoE+05EZP1Ui7V5MQFs6/RLPy7lqk+4g/7DH7cV6gdiiuoIHip6//Akeo qC60CaPTFIoT/4UtkO8dDybMBl1BglVmfbh2hCeBghI0GsIgsJ61C5ZAAir2ZU4kRNe0 /3YNt9elhaNcVz4lTkjM+rbypzppicxE1ipuYPyuYm8VQKV32c0efArpTVQlX/pzkp/V uFVuTKHGYmLqiiOZnGpsiYnzCyyzrJ9sBBeqYk9diYzbNa3uZepJ7YFUoVSaI3EF1LwL qIKA== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=qJs8Q2uK; spf=pass (google.com: domain of roberto.foglietta@gmail.com designates 2607:f8b0:4864:20::f2f as permitted sender) smtp.mailfrom=roberto.foglietta@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from mail-qv1-xf2f.google.com (mail-qv1-xf2f.google.com. [2607:f8b0:4864:20::f2f]) by gmr-mx.google.com with ESMTPS id g137-20020a81528f000000b004e0c0549c53si3666875ywb.2.2023.02.01.06.27.37 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 01 Feb 2023 06:27:37 -0800 (PST) Received-SPF: pass (google.com: domain of roberto.foglietta@gmail.com designates 2607:f8b0:4864:20::f2f as permitted sender) client-ip=2607:f8b0:4864:20::f2f; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=qJs8Q2uK; spf=pass (google.com: domain of roberto.foglietta@gmail.com designates 2607:f8b0:4864:20::f2f as permitted sender) smtp.mailfrom=roberto.foglietta@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: by mail-qv1-xf2f.google.com with SMTP id ll10so12161625qvb.6 for ; Wed, 01 Feb 2023 06:27:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Z75lDVJjCzWPVG3nqW9aSxdtd5CB/Ft1B7f3Y4PAR74=; b=qJs8Q2uKy0yeRJjymNYq01CUAjBcc1nJgn5Jf2na8hQar7R2OSur7AT/lgko849URz rvlPQEyq3q4D/VbqhwJWchPX5yQZN6wIEI1feR+jT0eWwk3M6u1m9yc8ydNR6at/3GJr wO1wyXh+gaubmH2OC9xus66ORIzkEvQgaMk6M6Mn2LxTs4EraEyIZXLbCvG9CHzNuJ7j FGE2XFz42hcR+nxNYIHdDkz+DcgszXlRdq7k8LVNr6XWMcZV82FEjwmtduhyN5W0g8FC eUUAWRSlDEEVQsVbDp4PLx95Je1FK6kLhAfDJ8N0OpuHv7UqHRdVkKehwfoHqZbFokXe HX/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Z75lDVJjCzWPVG3nqW9aSxdtd5CB/Ft1B7f3Y4PAR74=; b=2xmPlyLsRjsWXCzxLsIe3sZOQVbPtBEI2M4EM5LvtJqnJLf1rt3U3BxHegieXWO0RL hWWc6hmvRRY1zVFaQoTXdY2Lj/DWmAHxakGzMwCmSHHPl4ugYol5Dxz3rZcT++vaSdRZ iX8NaT5wEWL2v9SNHOmVF1GX3EyMrONXD5zbJiUVGlvXfZsmCmYFMaFIewK4CAqZNX8B w+S23qt+aKAvssRSznkHl1eq0JUqMP+irCQosZGPbqBMVzuVVHUOxeeGx7RURjgc6iLM o+XwMa2ek8mkvJr3edvSUEwWOxOxSNgq67pqDfdQv6121H3CI0TxwdHcXzs0amfixwWc WvpA== X-Gm-Message-State: AO0yUKVtRMNiRkOgMepc/gNcgGKAPTkzcLY7RXZ3I3pbyEflkN5++NuX nShU3oYrcZigCPDXXdr78CQf1K0TCc0TXB0ylPseRN6zMWrh X-Received: by 2002:a05:6214:1401:b0:537:4c1f:1d15 with SMTP id pr1-20020a056214140100b005374c1f1d15mr189724qvb.8.1675261657477; Wed, 01 Feb 2023 06:27:37 -0800 (PST) MIME-Version: 1.0 References: <20230131112012.24054-1-ubely@ilbers.de> <20230201100046.27c229b6@md1za8fc.ad001.siemens.net> In-Reply-To: <20230201100046.27c229b6@md1za8fc.ad001.siemens.net> From: "Roberto A. Foglietta" Date: Wed, 1 Feb 2023 15:27:01 +0100 Message-ID: Subject: Re: [PATCH] deb-dl-dir: Fallback to copying when import-export To: Henning Schild Cc: Uladzimir Bely , isar-users@googlegroups.com Content-Type: text/plain; charset="UTF-8" X-TUID: 6Z2gnxomwz7l On Wed, 1 Feb 2023 at 10:00, Henning Schild wrote: > > Am Tue, 31 Jan 2023 12:20:12 +0100 > schrieb Uladzimir Bely : > > > By default, hardlinks are used when doing DL_DIR import and export. > > This fails if DL_DIR's filesystem differs from TMPDIR's one. > > > > Fallback to file copying (with lower performance and huge disk usage) > > in this case. > > > > Signed-off-by: Uladzimir Bely > > --- > > meta/classes/deb-dl-dir.bbclass | 18 ++++++++++++++++-- > > 1 file changed, 16 insertions(+), 2 deletions(-) > > > > diff --git a/meta/classes/deb-dl-dir.bbclass > > b/meta/classes/deb-dl-dir.bbclass index 7db25251..d572e6fb 100644 > > --- a/meta/classes/deb-dl-dir.bbclass > > +++ b/meta/classes/deb-dl-dir.bbclass > > @@ -80,13 +80,20 @@ deb_dl_dir_import() { > > export pc="${DEBDIR}/${2}" > > export rootfs="${1}" > > sudo mkdir -p "${rootfs}"/var/cache/apt/archives/ > > + > > + # Use hardlinks with fallback to `cp` if different filesystems > > + export cmd="ln -Pf -t" > > + if [ "$(stat -c %m ${pc})" != "$(stat -c %m ${rootfs})" ]; then > > Instead of dealing only with the known problem and expecting it to > come, maybe try an actual hardlink and "catch the exception". > Hi Henning, > cmd = ln cmd = "ln -Pft $dest" but this is not the issue > cmd testfile || cmd = cp It might not work because cp -l complains and fails but ln -P complains but succeeds (or at least succeeds enough even in some cases in which it complains). IMHO, if it complains it also returns an error as well. But also this is not the issue. > rm -f testfile > > Who knows which other reasons we might find where hardlinks do not > work. And who knows how that stat could get confused by bind-mounts or > funny filesystems ... where hardlinks might work after all, even if the > stat would guess not. > > So instead of guessing i am all for actually trying. > The general approach you are suggesting is valid and it is good advice. Best regards, R-