GNU bug report logs - #79267
cp --sparse=auto heuristic fails on a squashfs mounted drive.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: coreutils; Reported by: Jeremy Allison <jallison@HIDDEN>; dated Tue, 19 Aug 2025 02:39:02 UTC; Maintainer for coreutils is bug-coreutils@HIDDEN.
Did not alter fixed versions and reopened. Request was from Debbugs Internal Request <help-debbugs@HIDDEN> to internal_control <at> debbugs.gnu.org. Full text available.

Message received at 79267 <at> debbugs.gnu.org:


Received: (at 79267) by debbugs.gnu.org; 22 Aug 2025 13:04:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Aug 22 09:04:32 2025
Received: from localhost ([127.0.0.1]:35611 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1upRRY-0002Qj-8a
	for submit <at> debbugs.gnu.org; Fri, 22 Aug 2025 09:04:32 -0400
Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]:53301)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <pixelbeat@HIDDEN>)
 id 1upRRU-0002QQ-TI
 for 79267 <at> debbugs.gnu.org; Fri, 22 Aug 2025 09:04:29 -0400
Received: by mail-wm1-x32a.google.com with SMTP id
 5b1f17b1804b1-45a1b098f43so15663115e9.2
 for <79267 <at> debbugs.gnu.org>; Fri, 22 Aug 2025 06:04:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1755867862; x=1756472662; darn=debbugs.gnu.org;
 h=content-transfer-encoding:in-reply-to:from:content-language
 :references:cc:to:subject:user-agent:mime-version:date:message-id
 :sender:from:to:cc:subject:date:message-id:reply-to;
 bh=HXtsSP8Ag8Cp4H/5mdtiLkMGDDCniHwN1RyymZVkNDg=;
 b=gmK6UaU6M/TI9GApJLEr8nMjZChpWm/vziNemh3FBob836HMHdUSRflj6k2OSFrU9Z
 GfswJpMMoMrBnbQvJA+cI3MXTCYJf8qNjDXOJbO6k2quRMBXeCp/cBYxW6/rYM7BQd7F
 f58a/QPSyDqQxkQIWg2lzF2Tdzbg2o+ZkvoJ8HeqF5VZyGSf4Y49pZTT9vAuRqNOeaQ6
 quwf42Vt+tfZr9RjC+2e6UIS3WFj/HqjCJRgMfZTV2WSAw2r3A3KADxv1CWpmg7ctvHd
 LdFCrs7yOaW1gdpToC8szyjpQMRuEeRklS0OZYTW9st05V1Y2Cj+qrtQWkkH5w3zE12r
 +aVA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1755867862; x=1756472662;
 h=content-transfer-encoding:in-reply-to:from:content-language
 :references:cc:to:subject:user-agent:mime-version:date:message-id
 :sender:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=HXtsSP8Ag8Cp4H/5mdtiLkMGDDCniHwN1RyymZVkNDg=;
 b=l6w3QMPXFw82LdqhF4bzf8N9WIhd+xBi8/F5adcQunxMERjgo8Vw2/x33/O0eB110y
 P5wfi+9Cq4xqZzT3r6EsOoR7aUMeukC/SEx/AwQMdLrJe2IkooclIzKe+eIOaLO0hTmA
 RGXg8Bu2kSyjmDMALApIolgDVjU1bHV4wO3VoCEvOPU9HFOtcXoYjAxmUMvlY/LcpC8L
 IHjXr1tFxrVFmKWPaPej2QVZ3wRIhob2w7E3RN+RJLS50sau7ON0Y6Eum9up22Ch8ksX
 X5uDZVbqpABWmLZ6fJruCsm/Z200Mpk6khdmM75KHwj4qCC9i6GuYk0pEpKHOWEBGatU
 Ijtg==
X-Gm-Message-State: AOJu0YwbLPlylhuFUgSV4DlYO3y5pS6UdRjkZmbTL1XrOZFJNkrkxipI
 8nKK73Rn5YrHhr2EMft+tzw3DkdbVgLgW45JB2dtPiUh9uiCba+ofDI9
X-Gm-Gg: ASbGncuLShXkyP5aYFm9WpgZtkfqM/5dcoRHDtsGao4OHbYPbYGJMD1aItbpMWtT8mk
 oRhpBh80nuQRqy2qkdh/8Hn6PRQXs4XLP8icmliRb5iLJGlYdoG+VSLOzJaHRBdCCxc8DWgfSWh
 TT8+t7aXsPJzvFdWnQtWQW90aUKqm026+rCMEpPMHCjZ+vHMhMVvL6++RjxxzqNaAzlmxDSWMvK
 RclwRUvWILXTnlyJpvfaRfRDR9iOB9Pu2WrljVRPTJRCdHNKzM2tsC4NB+6x4DbtdnZdqYer4oC
 vzY18yPK/58kWY6zaAT14a9pCS4cjQabnqjKb1mXCSFhkt7+KyYKPxe5/48rwNYISURIz+YWuAT
 yjUQ0ezdDKafVOxlHPV3dOVQi7DUYVEc8C30gBwj9W7NOVIWz9q17va5gIwl9asUvp1tXoOvw/G
 pSlA==
X-Google-Smtp-Source: AGHT+IH5B3SAfgy+IxJKpBLCj90QcV172OIaHnE6sLiwiX8pHfQXDXgx8B2dgTszT3Th9sdqEDapcw==
X-Received: by 2002:a05:600c:1c98:b0:456:214f:f78d with SMTP id
 5b1f17b1804b1-45b53cfa151mr17059795e9.22.1755867862069; 
 Fri, 22 Aug 2025 06:04:22 -0700 (PDT)
Received: from [192.168.1.31]
 (86-44-211-146-dynamic.agg2.lod.rsl-rtd.eircom.net. [86.44.211.146])
 by smtp.googlemail.com with ESMTPSA id
 5b1f17b1804b1-45b50de8ea4sm36838975e9.14.2025.08.22.06.04.21
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 22 Aug 2025 06:04:21 -0700 (PDT)
Message-ID: <7fe26671-f51a-44f2-8842-66f86c7f2c4e@HIDDEN>
Date: Fri, 22 Aug 2025 14:04:19 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird Beta
Subject: Re: bug#79267: cp --sparse=auto heuristic fails on a squashfs mounted
 drive.
To: Paul Eggert <eggert@HIDDEN>, Jeremy Allison <jallison@HIDDEN>
References: <CADfv6Kad+qpEyscjJ8-ZhW0FcFHi5sXSqti+0v+ETgymVeRC-Q@HIDDEN>
 <7dab926f-54eb-4fdd-8d1a-264b59cf1338@HIDDEN>
Content-Language: en-US
From: =?UTF-8?Q?P=C3=A1draig_Brady?= <P@HIDDEN>
In-Reply-To: <7dab926f-54eb-4fdd-8d1a-264b59cf1338@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.1 (/)
X-Debbugs-Envelope-To: 79267
Cc: 79267 <at> debbugs.gnu.org, hvanderwal@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.9 (/)

A question about this hunk:

@@ -619,9 +615,9 @@ lseek_copy (int src_fd, int dest_fd, char **abuf, size_t buf_size,
           is conservative and may miss some holes.  */
        off_t n_read;
        if ( ! sparse_copy (src_fd, dest_fd, abuf, buf_size,
-                          true, allow_reflink, src_name, dst_name,
+                          allow_reflink, src_name, dst_name,
                            ext_len,
-                          sparse_mode == SPARSE_ALWAYS ? hole_size : nullptr,
+                          sparse_mode != SPARSE_NEVER ? hole_size : nullptr,
                            &n_read))
          return false;


The comment above that is:

       /* Copy this extent, looking for further opportunities to not
          bother to write zeros if --sparse=always, since SEEK_HOLE
          is conservative and may miss some holes.  */

So the comment needs to be tweaked, but a more general issue
is that it disables copy offloading (copy_file_range) for sparse files.
I.e. it undoes https://github.com/coreutils/coreutils/commit/879d2180d
BTW commit 26bf557 also changed this a couple of weeks ago
without updating the comment, so the comment relates to sparse_mode != SPARSE_ALWAYS.

If we do decide to change behavior here it should documented in NEWS,
but I don't think this is the right compromise.

If we can't handle all cases optimally, I'd be inclined to err on being
as performant as possible by default, and only try harder to look for holes
with --sparse=always. squashfs is giving the wrong info here after all, right?

cheers,
Padraig.




Information forwarded to bug-coreutils@HIDDEN:
bug#79267; Package coreutils. Full text available.

Message received at 79267-done <at> debbugs.gnu.org:


Received: (at 79267-done) by debbugs.gnu.org; 21 Aug 2025 23:24:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 21 19:24:26 2025
Received: from localhost ([127.0.0.1]:33519 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1upEdt-0002ZS-SK
	for submit <at> debbugs.gnu.org; Thu, 21 Aug 2025 19:24:26 -0400
Received: from mail.cs.ucla.edu ([131.179.128.66]:36240)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1upEdr-0002ZA-NM
 for 79267-done <at> debbugs.gnu.org; Thu, 21 Aug 2025 19:24:24 -0400
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 360923C0149F1;
 Thu, 21 Aug 2025 16:24:17 -0700 (PDT)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id ZEoq1PKjv5m5; Thu, 21 Aug 2025 16:24:17 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 0F61A3C2C22D5;
 Thu, 21 Aug 2025 16:24:17 -0700 (PDT)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 0F61A3C2C22D5
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1755818657;
 bh=rTfc6lUzCCtE3NL+d8C8F58XpCrS7gGpuKVSd4j5HKU=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=l60cAb53D/y8hwT50cDSeWowS4YrGZ+yeXBXzHgjdTNqnNfeUAU0Vixl9xZfleFP1
 VLLtUi/Rva566Q9D4W1t6gxknggMeQsH7pC2KialdDi7PP0XjzjLIwxrmydt6Emtnu
 zTdHcNoCtha4eG0WqZqzQDCxoFt94XmBIQ4rxvzT5wsTbuJV5ByDG01NIZ8Bh7fOre
 Dz6JyWLWJkxHtbfbhotuiePgPzZ5/JhRaa0euB9VCJHRQA/oWxTxyaQY6PFp0Ln90s
 UZr6EBCylcyrNduT3awvOZDvr+/oC4ra53jYYsb5Gk0wFE4jNfYjqWVN7VSjsQUBFB
 tSReG49rqDrrg==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id MOXbPByJa_9q; Thu, 21 Aug 2025 16:24:16 -0700 (PDT)
Received: from [10.10.33.175] (unknown [96.69.135.29])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id BE69C3C0149F1;
 Thu, 21 Aug 2025 16:24:16 -0700 (PDT)
Message-ID: <40ca7996-0969-4e6b-8aff-a4a547a814e0@HIDDEN>
Date: Thu, 21 Aug 2025 17:24:16 -0600
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#79267: cp --sparse=auto heuristic fails on a squashfs mounted
 drive.
To: Jeremy Allison <jallison@HIDDEN>
References: <CADfv6Kad+qpEyscjJ8-ZhW0FcFHi5sXSqti+0v+ETgymVeRC-Q@HIDDEN>
 <7dab926f-54eb-4fdd-8d1a-264b59cf1338@HIDDEN>
 <CADfv6KYi0p10=_0h8HUYWRdhgXTOciMKtCTJFRm6999qUo61ag@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
In-Reply-To: <CADfv6KYi0p10=_0h8HUYWRdhgXTOciMKtCTJFRm6999qUo61ag@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79267-done
Cc: 79267-done <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Thanks for checking; closing the bug report.




Notification sent to Jeremy Allison <jallison@HIDDEN>:
bug acknowledged by developer. Full text available.
Reply sent to Paul Eggert <eggert@HIDDEN>:
You have taken responsibility. Full text available.

Message received at 79267 <at> debbugs.gnu.org:


Received: (at 79267) by debbugs.gnu.org; 21 Aug 2025 23:23:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 21 19:23:13 2025
Received: from localhost ([127.0.0.1]:33514 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1upEcj-0002WQ-71
	for submit <at> debbugs.gnu.org; Thu, 21 Aug 2025 19:23:13 -0400
Received: from mail-pg1-x535.google.com ([2607:f8b0:4864:20::535]:58515)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <jallison@HIDDEN>) id 1upEcf-0002WA-Pa
 for 79267 <at> debbugs.gnu.org; Thu, 21 Aug 2025 19:23:11 -0400
Received: by mail-pg1-x535.google.com with SMTP id
 41be03b00d2f7-b474e8d6d04so1307678a12.0
 for <79267 <at> debbugs.gnu.org>; Thu, 21 Aug 2025 16:23:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=ciq.com; s=s1; t=1755818583; x=1756423383; darn=debbugs.gnu.org;
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:from:to:cc:subject:date
 :message-id:reply-to;
 bh=MVe+fhQd/NNDb13ToVsUVT4235H/MBZhjYLtHM7INpI=;
 b=CSvKNRTPZCgQc64ggHWgJtLHUu++S39zP7nxD48So4bnRceb1Y/+/E7cBmZQ5RX/uR
 AMjGZ3oxUkRt1CdV1r6M1abt7QxU3pBzXmvtEemRQm98PvCNW3W7eNd+25XI8s21VTy9
 KeFph52FVOsY7jO0qbC6ZnrYHSQKriHUFH+Z47d+64GDeTgGEdClbIAi9RcGF5mICBof
 VgCanc/jHCrEAtsNPlNTaII1GPzq+0l7k27nSXDNAlSat9VUWwfD7190AsFBDVPeTmvH
 5gYhHNLdrZScJSPtbqIOo/iVW8goW6ZUy/Ym5QxzSqwdz2gqYZd+1RGZb1OQn+lHTd5C
 TzQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1755818583; x=1756423383;
 h=content-transfer-encoding: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=MVe+fhQd/NNDb13ToVsUVT4235H/MBZhjYLtHM7INpI=;
 b=FNzArtjf2ppeV13IEnsxTgMwOjyxG4AnPNYGlDY9b9ljPR/GcgxsvT1WTGGeZUvuKU
 cVu09l9cv1NwYOa2jjrAd4fpd4NqiMtMvD0VKelnyl919JJBVa4gin0NATX6Djg85qDs
 dRZSuMpZBtJJ/y9gckvxaptaCHXSKvd7XUxDRqEAC24efA5l0iSow6w1WUnQXvFhPmV4
 A+SR5ffgGaoKV/dqCKsZNR2TgzZuQJhAfCRJvE8RRpI/YlcyAqWb6ZZqOoVLHbvXnew2
 G2c8JnkYj2a/TVqvLSQ++3V9S+I+FR0ESYaRlcr5LC0iWBCwcSy/tWQjryK3pT2m2E/y
 Ntyw==
X-Gm-Message-State: AOJu0YwpJ6WriasWY25W2fpyPS//BIoYSPwNHxeOwD3ht9c2J8Rh3Mfz
 3VcWDuqRHZ692EB0rZufB7KwMbFZKpD7usjQpKk85oWrALOGL5J/gTU1xB/s0vjaPB/jQr1mJMW
 UclkIZYeYhJMbzrd3G9FjRx2jLGZSOcO73Tf7inaiew==
X-Gm-Gg: ASbGnctO8ntDkHKCGbi/O8bi5D4lWwQuTSEANXJHyQtI+ysrwEoXTkzMyjEIsg4+oG0
 dWiyZ9BA626OpN4kArfN6lBL9+qX4KR+2gukl/BsY08d6kUeFAh4JeAO/7KbDEyVzwmH0ipuDfc
 sNc5kYc3A5M2F+Eo30+5zohjaWvaIAmfeGz0H3Ze9EnNKf9/XatWj10sd3bwAOSuX0NwdALnUTy
 zTjlMRqcOZv9VGQ
X-Google-Smtp-Source: AGHT+IGNa9VLWgCEn0hpGw0u0cdwqhb/R2fLL6vBmkecU+k3Gl0K7uPBbpMzqKlRVKSFSXHfJG21cFrB3pudVN9SUJ0=
X-Received: by 2002:a17:902:f552:b0:240:b075:577f with SMTP id
 d9443c01a7336-2462ef1d579mr14381705ad.37.1755818583178; Thu, 21 Aug 2025
 16:23:03 -0700 (PDT)
MIME-Version: 1.0
References: <CADfv6Kad+qpEyscjJ8-ZhW0FcFHi5sXSqti+0v+ETgymVeRC-Q@HIDDEN>
 <7dab926f-54eb-4fdd-8d1a-264b59cf1338@HIDDEN>
In-Reply-To: <7dab926f-54eb-4fdd-8d1a-264b59cf1338@HIDDEN>
From: Jeremy Allison <jallison@HIDDEN>
Date: Thu, 21 Aug 2025 16:22:51 -0700
X-Gm-Features: Ac12FXxgldAKqFSYcYi1VXGUz8DVuYIM8V_Pr6qT_KXJAZQ2IRRDc9u7bMSim5I
Message-ID: <CADfv6KYi0p10=_0h8HUYWRdhgXTOciMKtCTJFRm6999qUo61ag@HIDDEN>
Subject: Re: bug#79267: cp --sparse=auto heuristic fails on a squashfs mounted
 drive.
To: Paul Eggert <eggert@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79267
Cc: 79267 <at> debbugs.gnu.org, hvanderwal@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Yes - that seems to fix the problem ! Thanks Paul.

On Thu, Aug 21, 2025 at 4:03=E2=80=AFPM Paul Eggert <eggert@HIDDEN> wr=
ote:
>
> Thanks for the bug report. Although this part of the code is messy and
> needs a revamp, in the meantime I installed the attached into the master
> branch on Savannah; please give it a try.




Information forwarded to bug-coreutils@HIDDEN:
bug#79267; Package coreutils. Full text available.

Message received at 79267 <at> debbugs.gnu.org:


Received: (at 79267) by debbugs.gnu.org; 21 Aug 2025 23:03:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 21 19:03:43 2025
Received: from localhost ([127.0.0.1]:33450 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1upEJr-0001Q4-6T
	for submit <at> debbugs.gnu.org; Thu, 21 Aug 2025 19:03:43 -0400
Received: from mail.cs.ucla.edu ([131.179.128.66]:49232)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1upEJo-0001Pn-PV
 for 79267 <at> debbugs.gnu.org; Thu, 21 Aug 2025 19:03:42 -0400
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 5AA3E3C0149F1;
 Thu, 21 Aug 2025 16:03:34 -0700 (PDT)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id j-G_3zjWwROF; Thu, 21 Aug 2025 16:03:34 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 30FD53C2C22D4;
 Thu, 21 Aug 2025 16:03:34 -0700 (PDT)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 30FD53C2C22D4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1755817414;
 bh=F5AvzqZLxC8/SyWOc+ojCaXqYMub7JnfP9bZHcEj2/s=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=CLk2l43h/SkQOhXpoXbjqVpYBqr4XejunFbxbGKH3q22uzfiVzXmcJmS2Pv9naqPi
 vJr6tT2cvm3zMtoihV4bIfwHym/4xEH7Fxk8I9VwWRFJ/Lyi+M5VuDY+2nhKrlkSoH
 OMvM/JrnQsl5EUZTadf0Sn4S9SmqfkvCd9C6RK4d+Yc6SFqpOJAMdbqgIEV9jjpNyQ
 fP1dnvBF543NRdrAusfYaXyCttjgVthhf6C3z/K9ce5QkE7Vt5l5Rlh2r7BkWWUAGf
 wdpbXP9TYXmzNhr3ng34zhcqLCqfoyyL0FWl/2PNKemWwho8Oqx5OOepLigCln2tCz
 2l98TZy4RZ9nQ==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id m_nJTYPwgZZW; Thu, 21 Aug 2025 16:03:34 -0700 (PDT)
Received: from [10.10.33.175] (unknown [96.69.135.29])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id CF2F83C0149F1;
 Thu, 21 Aug 2025 16:03:33 -0700 (PDT)
Content-Type: multipart/mixed; boundary="------------DOut60zi9EWu5vgUfPJDAKWR"
Message-ID: <7dab926f-54eb-4fdd-8d1a-264b59cf1338@HIDDEN>
Date: Thu, 21 Aug 2025 17:03:32 -0600
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#79267: cp --sparse=auto heuristic fails on a squashfs mounted
 drive.
To: Jeremy Allison <jallison@HIDDEN>
References: <CADfv6Kad+qpEyscjJ8-ZhW0FcFHi5sXSqti+0v+ETgymVeRC-Q@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
In-Reply-To: <CADfv6Kad+qpEyscjJ8-ZhW0FcFHi5sXSqti+0v+ETgymVeRC-Q@HIDDEN>
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 79267
Cc: 79267 <at> debbugs.gnu.org, hvanderwal@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

This is a multi-part message in MIME format.
--------------DOut60zi9EWu5vgUfPJDAKWR
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Thanks for the bug report. Although this part of the code is messy and 
needs a revamp, in the meantime I installed the attached into the master 
branch on Savannah; please give it a try.
--------------DOut60zi9EWu5vgUfPJDAKWR
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-cp-always-punch-holes-that-we-make.patch"
Content-Disposition: attachment;
 filename="0001-cp-always-punch-holes-that-we-make.patch"
Content-Transfer-Encoding: base64

RnJvbSBiN2ZjNzYyNjliYmM4MzBiZjk2MzIwY2Q1Y2NhM2NmZDkwZDMzZjY4IE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1
PgpEYXRlOiBUaHUsIDIxIEF1ZyAyMDI1IDE2OjAyOjEwIC0wNjAwClN1YmplY3Q6IFtQQVRD
SF0gY3A6IGFsd2F5cyBwdW5jaCBob2xlcyB0aGF0IHdlIG1ha2UKClByb2JsZW0gcmVwb3J0
ZWQgYnkgSmVyZW15IEFsbGlzb24gPGh0dHBzOi8vYnVncy5nbnUub3JnLzc5MjY3Pi4KKiBz
cmMvY29weS5jIChjcmVhdGVfaG9sZSwgc3BhcnNlX2NvcHkpOiBPbWl0IGFyZyBQVU5DSF9I
T0xFUywKYXMgd2UgYWx3YXlzIHB1bmNoIGhvbGVzIG5vdy4gIEFsbCB1c2VzIGNoYW5nZWQu
Cihsc2Vla19jb3B5KTogV2hlbiBjYWxsaW5nIHNwYXJzZV9jb3B5LCBzY2FuIGZvciBob2xl
cyB3aGVuCnNwYXJzZV9tb2RlID09IFNQQVJTRV9BVVRPLCBhcyB0aGF0IG1lYW5zIHdlIGFy
ZSBtYWtpbmcgaG9sZXMuCihjb3B5X3JlZyk6IEFsd2F5cyBwdW5jaCBhbnkgaG9sZSBtYWRl
IGF0IGVuZC4KLS0tCiBzcmMvY29weS5jIHwgMjEgKysrKysrKystLS0tLS0tLS0tLS0tCiAx
IGZpbGUgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYg
LS1naXQgYS9zcmMvY29weS5jIGIvc3JjL2NvcHkuYwppbmRleCA3N2YwYzU2MWUuLmUzMjhi
ZDg4NiAxMDA2NDQKLS0tIGEvc3JjL2NvcHkuYworKysgYi9zcmMvY29weS5jCkBAIC0yNTMs
MTIgKzI1MywxMSBAQCBwdW5jaF9ob2xlIChpbnQgZmQsIG9mZl90IG9mZnNldCwgb2ZmX3Qg
bGVuZ3RoKQogfQogCiAvKiBDcmVhdGUgYSBob2xlIGF0IHRoZSBlbmQgb2YgdGhlIGZpbGUg
d2l0aCBkZXNjcmlwdG9yIEZEIGFuZCBuYW1lIE5BTUUuCi0gICBJZiBQVU5DSF9IT0xFUywg
YXZvaWQgcHJlYWxsb2NhdGlvbiBpZiByZXF1ZXN0ZWQuCiAgICBUaGUgaG9sZSBpcyBvZiBz
aXplIFNJWkUuICBBc3N1bWUgRkQgaXMgYWxyZWFkeSBhdCBmaWxlIGVuZCwKICAgIGFuZCBh
ZHZhbmNlIEZEIHBhc3QgdGhlIG5ld2x5LWNyZWF0ZWQgaG9sZS4gICovCiAKIHN0YXRpYyBi
b29sCi1jcmVhdGVfaG9sZSAoaW50IGZkLCBjaGFyIGNvbnN0ICpuYW1lLCBib29sIHB1bmNo
X2hvbGVzLCBvZmZfdCBzaXplKQorY3JlYXRlX2hvbGUgKGludCBmZCwgY2hhciBjb25zdCAq
bmFtZSwgb2ZmX3Qgc2l6ZSkKIHsKICAgb2ZmX3QgZmlsZV9lbmQgPSBsc2VlayAoZmQsIHNp
emUsIFNFRUtfQ1VSKTsKIApAQCAtMjcyLDcgKzI3MSw3IEBAIGNyZWF0ZV9ob2xlIChpbnQg
ZmQsIGNoYXIgY29uc3QgKm5hbWUsIGJvb2wgcHVuY2hfaG9sZXMsIG9mZl90IHNpemUpCiAg
ICAgIEkuZS4sIGEgcHJldmlvdXMgd3JpdGUoKSBtYXkgaGF2ZSBwcmVhbGxvY2F0ZWQgZXh0
cmEgc3BhY2UKICAgICAgdGhhdCB0aGUgc2VlayBhYm92ZSB3aWxsIG5vdCBkaXNjYXJkLiAg
QSBzdWJzZXF1ZW50IHdyaXRlKCkgY291bGQKICAgICAgdGhlbiBtYWtlIHRoaXMgYWxsb2Nh
dGlvbiBwZXJtYW5lbnQuICAqLwotICBpZiAocHVuY2hfaG9sZXMgJiYgcHVuY2hfaG9sZSAo
ZmQsIGZpbGVfZW5kIC0gc2l6ZSwgc2l6ZSkgPCAwKQorICBpZiAocHVuY2hfaG9sZSAoZmQs
IGZpbGVfZW5kIC0gc2l6ZSwgc2l6ZSkgPCAwKQogICAgIHsKICAgICAgIGVycm9yICgwLCBl
cnJubywgXygiZXJyb3IgZGVhbGxvY2F0aW5nICVzIiksIHF1b3RlYWYgKG5hbWUpKTsKICAg
ICAgIHJldHVybiBmYWxzZTsKQEAgLTMxMSw3ICszMTAsNiBAQCBpc19DTE9ORU5PVFNVUCAo
aW50IGVycikKICAgIGhvbm9yaW5nIHRoZSBNQUtFX0hPTEVTIHNldHRpbmcgYW5kIHVzaW5n
IHRoZSBCVUZfU0laRS1ieXRlIGJ1ZmZlcgogICAgKkFCVUYgZm9yIHRlbXBvcmFyeSBzdG9y
YWdlLCBhbGxvY2F0aW5nIGl0IGxhemlseSBpZiAqQUJVRiBpcyBudWxsLgogICAgRm9yIGJl
c3QgcmVzdWx0cywgKkFCVUYgc2hvdWxkIGJlIHdlbGwtYWxpZ25lZC4KLSAgIElmIFBVTkNI
X0hPTEVTLCBwdW5jaCBob2xlcyBpbiB0aGUgb3V0cHV0LgogICAgQ29weSBubyBtb3JlIHRo
YW4gTUFYX05fUkVBRCBieXRlcy4KICAgIElmIEhPTEVfU0laRSwgbG9vayBmb3IgaG9sZXMg
aW4gdGhlIGlucHV0OyAqSE9MRV9TSVpFIGNvbnRhaW5zCiAgICB0aGUgc2l6ZSBvZiB0aGUg
Y3VycmVudCBob2xlIHNvIGZhciwgYW5kIHVwZGF0ZSAqSE9MRV9TSVpFCkBAIC0zMjIsNyAr
MzIwLDcgQEAgaXNfQ0xPTkVOT1RTVVAgKGludCBlcnIpCiAgICBwcmludCBhIGRpYWdub3N0
aWMgYW5kIHJldHVybiBmYWxzZSB1cG9uIGVycm9yLiAgKi8KIHN0YXRpYyBib29sCiBzcGFy
c2VfY29weSAoaW50IHNyY19mZCwgaW50IGRlc3RfZmQsIGNoYXIgKiphYnVmLCBzaXplX3Qg
YnVmX3NpemUsCi0gICAgICAgICAgICAgYm9vbCBwdW5jaF9ob2xlcywgYm9vbCBhbGxvd19y
ZWZsaW5rLAorICAgICAgICAgICAgIGJvb2wgYWxsb3dfcmVmbGluaywKICAgICAgICAgICAg
ICBjaGFyIGNvbnN0ICpzcmNfbmFtZSwgY2hhciBjb25zdCAqZHN0X25hbWUsCiAgICAgICAg
ICAgICAgdWludG1heF90IG1heF9uX3JlYWQsIG9mZl90ICpob2xlX3NpemUsIG9mZl90ICp0
b3RhbF9uX3JlYWQpCiB7CkBAIC00MzcsNyArNDM1LDcgQEAgc3BhcnNlX2NvcHkgKGludCBz
cmNfZmQsIGludCBkZXN0X2ZkLCBjaGFyICoqYWJ1Ziwgc2l6ZV90IGJ1Zl9zaXplLAogICAg
ICAgICAgICAgICAgIHBzaXplICs9IGNzaXplOwogICAgICAgICAgICAgICBlbHNlIGlmIChw
cmV2X2hvbGUpCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAgaWYgKCEg
Y3JlYXRlX2hvbGUgKGRlc3RfZmQsIGRzdF9uYW1lLCBwdW5jaF9ob2xlcywgcHNpemUpKQor
ICAgICAgICAgICAgICAgICAgaWYgKCEgY3JlYXRlX2hvbGUgKGRlc3RfZmQsIGRzdF9uYW1l
LCBwc2l6ZSkpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAg
ICAgICAgICAgIHBidWYgPSBjYnVmOwogICAgICAgICAgICAgICAgICAgcHNpemUgPSBjc2l6
ZTsKQEAgLTU5MSw5ICs1ODksNyBAQCBsc2Vla19jb3B5IChpbnQgc3JjX2ZkLCBpbnQgZGVz
dF9mZCwgY2hhciAqKmFidWYsIHNpemVfdCBidWZfc2l6ZSwKICAgICAgICAgICAgICpob2xl
X3NpemUgKz0gZXh0X2hvbGVfc2l6ZTsKICAgICAgICAgICBlbHNlIGlmIChzcGFyc2VfbW9k
ZSAhPSBTUEFSU0VfTkVWRVIpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgIGlmICgh
IGNyZWF0ZV9ob2xlIChkZXN0X2ZkLCBkc3RfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNwYXJzZV9tb2RlID09IFNQQVJTRV9BTFdBWVMsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBleHRfaG9sZV9zaXplKSkKKyAgICAgICAgICAgICAg
aWYgKCEgY3JlYXRlX2hvbGUgKGRlc3RfZmQsIGRzdF9uYW1lLCBleHRfaG9sZV9zaXplKSkK
ICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgZWxzZQpAQCAtNjE5LDkgKzYxNSw5IEBAIGxzZWVrX2NvcHkgKGludCBzcmNfZmQsIGlu
dCBkZXN0X2ZkLCBjaGFyICoqYWJ1Ziwgc2l6ZV90IGJ1Zl9zaXplLAogICAgICAgICAgaXMg
Y29uc2VydmF0aXZlIGFuZCBtYXkgbWlzcyBzb21lIGhvbGVzLiAgKi8KICAgICAgIG9mZl90
IG5fcmVhZDsKICAgICAgIGlmICggISBzcGFyc2VfY29weSAoc3JjX2ZkLCBkZXN0X2ZkLCBh
YnVmLCBidWZfc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSwgYWxsb3df
cmVmbGluaywgc3JjX25hbWUsIGRzdF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICBhbGxvd19yZWZsaW5rLCBzcmNfbmFtZSwgZHN0X25hbWUsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGV4dF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgIHNwYXJzZV9t
b2RlID09IFNQQVJTRV9BTFdBWVMgPyBob2xlX3NpemUgOiBudWxscHRyLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICBzcGFyc2VfbW9kZSAhPSBTUEFSU0VfTkVWRVIgPyBob2xlX3Np
emUgOiBudWxscHRyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmbl9yZWFkKSkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCkBAIC0xNTc2LDcgKzE1NzIsNiBAQCBjb3B5X3JlZyAo
Y2hhciBjb25zdCAqc3JjX25hbWUsIGNoYXIgY29uc3QgKmRzdF9uYW1lLAogICAgICAgICAg
ICAgIDoKICNlbmRpZgogICAgICAgICAgICAgICAgc3BhcnNlX2NvcHkgKHNvdXJjZV9kZXNj
LCBkZXN0X2Rlc2MsICZidWYsIGJ1Zl9zaXplLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHgtPnNwYXJzZV9tb2RlID09IFNQQVJTRV9BTFdBWVMsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgeC0+cmVmbGlua19tb2RlICE9IFJFRkxJTktfTkVWRVIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc3JjX25hbWUsIGRzdF9uYW1lLCBVSU5UTUFYX01BWCwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlX2hvbGVzID8gJmhvbGVfc2l6ZSA6
IG51bGxwdHIsICZuX3JlYWQpKSkKQEAgLTE1OTQsNyArMTU4OSw3IEBAIGNvcHlfcmVnIChj
aGFyIGNvbnN0ICpzcmNfbmFtZSwgY2hhciBjb25zdCAqZHN0X25hbWUsCiAgICAgICAgICAg
ICAgIHJldHVybl92YWwgPSBmYWxzZTsKICAgICAgICAgICAgICAgZ290byBjbG9zZV9zcmNf
YW5kX2RzdF9kZXNjOwogICAgICAgICAgICAgfQotICAgICAgICAgIGlmICh4LT5zcGFyc2Vf
bW9kZSA9PSBTUEFSU0VfQUxXQVlTCisgICAgICAgICAgaWYgKG1ha2VfaG9sZXMKICAgICAg
ICAgICAgICAgJiYgcHVuY2hfaG9sZSAoZGVzdF9kZXNjLCBuX3JlYWQgLSBob2xlX3NpemUs
IGhvbGVfc2l6ZSkgPCAwKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICBlcnJvciAo
MCwgZXJybm8sIF8oImVycm9yIGRlYWxsb2NhdGluZyAlcyIpLCBxdW90ZWFmIChkc3RfbmFt
ZSkpOwotLSAKMi41MC4xCgo=

--------------DOut60zi9EWu5vgUfPJDAKWR--




Information forwarded to bug-coreutils@HIDDEN:
bug#79267; Package coreutils. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 19 Aug 2025 02:38:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Aug 18 22:38:17 2025
Received: from localhost ([127.0.0.1]:51976 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uoCEp-00030U-9I
	for submit <at> debbugs.gnu.org; Mon, 18 Aug 2025 22:38:17 -0400
Received: from lists.gnu.org ([2001:470:142::17]:39778)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <jallison@HIDDEN>) id 1uo7MZ-0003DA-GF
 for submit <at> debbugs.gnu.org; Mon, 18 Aug 2025 17:25:56 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <jallison@HIDDEN>) id 1uo7MT-0006Fl-Fy
 for bug-coreutils@HIDDEN; Mon, 18 Aug 2025 17:25:49 -0400
Received: from mail-pg1-x52a.google.com ([2607:f8b0:4864:20::52a])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <jallison@HIDDEN>) id 1uo7MR-000207-Ej
 for bug-coreutils@HIDDEN; Mon, 18 Aug 2025 17:25:49 -0400
Received: by mail-pg1-x52a.google.com with SMTP id
 41be03b00d2f7-b47475cf8eeso915504a12.3
 for <bug-coreutils@HIDDEN>; Mon, 18 Aug 2025 14:25:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=ciq.com; s=s1; t=1755552345; x=1756157145; darn=gnu.org;
 h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
 :date:message-id:reply-to;
 bh=WMxLu2EWbNs+Z+k8HS9hZXe/KFnaBtcyfU9bBhtnYms=;
 b=WKt4Dqo4C/YZS3Ljt1f7v0b/6cax3mmEB1h2tKZbTKe4ChUPdSG2pIO80p0sTny+RQ
 Xf2anFHewM4OYFwS/rTN7O2ZcvFkLczFGulny1MNeLMpod+oIMAy0710ZSdYuGRrbelA
 Ku/d4PMYxL0fo5FWpl8yCOTKGawNvV9iVrmWuBtqh69lQrGwCiezQPHaUhNZTnIcNyAY
 fJXPOnF/bKP/6qpqH0gHgOawIiSrRvtBsJG3O/coEZVJsPz2le+Dcdxd4iPhUlXUgjtc
 f6Tf/yjozyU0CRDXQ+crUwXxIfGRy2D0JkBfOXcOA+btwkiqZfvNetgdZIwWpHQIrQkD
 6vdA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1755552345; x=1756157145;
 h=to:subject:message-id:date:from:mime-version:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=WMxLu2EWbNs+Z+k8HS9hZXe/KFnaBtcyfU9bBhtnYms=;
 b=HK5ddVhTAFoY03alTQB2z25OqxySfwdJgikB5dD3+4CgyaDeT0C0o+0fzj6bp2Ey16
 tyLH+HXFhPrqY/oaFrZDyL74WwH9IMp5NCj90C3DIf04A8z84Izh49e09F9onIGM00LB
 R9MTHsch5a4syq/X66gQMfaYjKHuW7dE4qkVHGGk0ntWfyPTjGyewWesFSIodOYLlQVW
 bVjjnj3RUkmyRk0j0saoG4o61IBXmiiU0sJ+yZiVQuhFiUqeaZzEwe5cJ2HxV5Q4Mmvy
 dGgvEtqN5Trj1Q1ypexuMsU4nZAszYHtZqhghMuAhh8omQ8ALM1aTRwZ690XKZNOA2p1
 zXxA==
X-Gm-Message-State: AOJu0YzpptMR3jog/5SWx2utS3TysyTUYCJkoDz/T5up3+cvqI6hoWRu
 u8I1En4Kko3pTWQ2rZ/KEsoRu/9lQaJgARw7hP8AbhKmLmtAmzSjiEJ//i1WhzlND/LTaJtMQ55
 l3rE63YRLLr71JBknO55aImvRcrSyuTe0ZanX9Qn9PyLb4rxYKlO0dmc=
X-Gm-Gg: ASbGncsvpMXG3yP8yfym8PKWXEdx+RfHU0Mmprw1aHm303nhliJrL5+xwgI5QefGKdF
 NhYwutaBoGdfoZ4rM2Kb5R0fT6LwNnsL8uDG6IZ1ZQxqyklbOmNiV6JgEnYPUlRiGFWvwhrJ5dP
 aeLWYeaPJkA8SCmCEZ3L/FgZ4xdlGDS9IKcvVPjGssv9WOSZU4p+vxH0FBISDDiVhEIYJOzyInD
 6NUHw==
X-Google-Smtp-Source: AGHT+IEmp34VMRZI4TFWtTOSuJIxNNLM7KIXOTEjXR3VMdpxyNhzIxvTUySE7bsKKMoRwWZMmTIr622FM8BCR2sM7GQ=
X-Received: by 2002:a17:903:144f:b0:240:22af:91c7 with SMTP id
 d9443c01a7336-245e02db23dmr1650945ad.14.1755552345166; Mon, 18 Aug 2025
 14:25:45 -0700 (PDT)
MIME-Version: 1.0
From: Jeremy Allison <jallison@HIDDEN>
Date: Mon, 18 Aug 2025 14:25:32 -0700
X-Gm-Features: Ac12FXyRb6eynMgGQjs-llyGdiiioyQ1IGjpI_yOOl8C010aCiL2dyK7_tvDr1Q
Message-ID: <CADfv6Kad+qpEyscjJ8-ZhW0FcFHi5sXSqti+0v+ETgymVeRC-Q@HIDDEN>
Subject: cp --sparse=auto heuristic fails on a squashfs mounted drive.
To: bug-coreutils@HIDDEN, Jeremy Allison <jallison@HIDDEN>, 
 Howard Van Der Wal <hvanderwal@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Received-SPF: pass client-ip=2607:f8b0:4864:20::52a;
 envelope-from=jallison@HIDDEN; helo=mail-pg1-x52a.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Mon, 18 Aug 2025 22:38:14 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

It turns out that: lseek(3, 0, SEEK_HOLE) returns end-of-file for a
sparse file copied from a Linux squashfs mounted drive. This breaks
the --sparse=auto heuristic that detects a sparse file.

I have a fix for you to consider.

To reproduce:

First, create a squashfs drive containing a file output_file.bin.

mkdir squashfs-root
cd squashfs-root

Then run the following script mkhole.sh:

--------------------------------------------------------------
#!/bin/bash
OUTPUT="output_file.bin"

# Remove file if it exists
rm -f "$OUTPUT"

# Write 4KB of 'A'
dd if=<(yes A | tr -d '\n' | head -c 4096) of="$OUTPUT" bs=4096 count=1

# Create a 4k*100 hole followed by 4KB of zeros
dd if=/dev/zero of="$OUTPUT" bs=4096 count=1 seek=101

# Write another 4KB of 'A' after the hole (overwriting the 4k of zeros)
dd if=<(yes A | tr -d '\n' | head -c 4096) of="$OUTPUT" bs=4096 count=1 seek=101
--------------------------------------------------------------

Now create the mysquashfs.img file to mount:

cd ..
mksquashfs squashfs-root mysquashfs.img
sudo mount -o loop  mysquashfs.img /mnt

Check that /mnt/output_file.bin is sparse:

ls -lh /mnt/output_file.bin
du -sh /mnt/output_file.bin

(the second value should be less).

Now use a newly built cp command from coreutils to copy this file to a
local filesystem.

mkdir ~/tmp
cd ~/tmp
~/src/coreutils/src/cp --reflink=never /mnt/output_file.bin nonsparse

Even though --sparse=auto and the file is sparse, it is not detected
as such. This can be confirmed by
running:

strace ~/src/coreutils/src/cp --reflink=never /mnt/output_file.bin nonsparse

and you will see:

lseek(3, 0, SEEK_DATA)                  = 0
fadvise64(3, 0, 0, POSIX_FADV_SEQUENTIAL) = 0
lseek(3, 0, SEEK_HOLE)                  = 417792

The following diff fixes this for me, and still passes "make check".

diff --git a/src/copy.c b/src/copy.c
index 77f0c561e..91136cd7c 100644
--- a/src/copy.c
+++ b/src/copy.c
@@ -592,7 +592,7 @@ lseek_copy (int src_fd, int dest_fd, char **abuf,
size_t buf_size,
           else if (sparse_mode != SPARSE_NEVER)
             {
               if (! create_hole (dest_fd, dst_name,
-                                 sparse_mode == SPARSE_ALWAYS,
+                                 sparse_mode != SPARSE_NEVER,
                                  ext_hole_size))
                 return false;
             }
@@ -621,7 +621,7 @@ lseek_copy (int src_fd, int dest_fd, char **abuf,
size_t buf_size,
       if ( ! sparse_copy (src_fd, dest_fd, abuf, buf_size,
                           true, allow_reflink, src_name, dst_name,
                           ext_len,
-                          sparse_mode == SPARSE_ALWAYS ? hole_size : nullptr,
+                          sparse_mode != SPARSE_NEVER ? hole_size : nullptr,
                           &n_read))
         return false;

@@ -1576,7 +1576,7 @@ copy_reg (char const *src_name, char const *dst_name,
              :
 #endif
                sparse_copy (source_desc, dest_desc, &buf, buf_size,
-                            x->sparse_mode == SPARSE_ALWAYS,
+                            x->sparse_mode != SPARSE_NEVER,
                             x->reflink_mode != REFLINK_NEVER,
                             src_name, dst_name, UINTMAX_MAX,
                             make_holes ? &hole_size : nullptr, &n_read)))

Thanks !

Jeremy Allison,
CIQ Inc.




Acknowledgement sent to Jeremy Allison <jallison@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-coreutils@HIDDEN. Full text available.
Report forwarded to bug-coreutils@HIDDEN:
bug#79267; Package coreutils. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Fri, 22 Aug 2025 17:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.