From nobody Wed Apr 12 16:54:59 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PxTNT0m7Gz455KW; Wed, 12 Apr 2023 16:55:21 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta002.cacentral1.a.cloudfilter.net (omta002.cacentral1.a.cloudfilter.net [3.97.99.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PxTNS4kxgz3N0w; Wed, 12 Apr 2023 16:55:20 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4002a.ext.cloudfilter.net ([10.228.9.250]) by cmsmtp with ESMTP id mYJ6p7mO6jvm1mdkdp7jS6; Wed, 12 Apr 2023 16:55:19 +0000 Received: from spqr.komquats.com ([70.66.148.124]) by cmsmtp with ESMTPA id mdkcpfif2yAOemdkcpassm; Wed, 12 Apr 2023 16:55:19 +0000 X-Authority-Analysis: v=2.4 cv=e5oV9Il/ c=1 sm=1 tr=0 ts=6436e277 a=Cwc3rblV8FOMdVN/wOAqyQ==:117 a=Cwc3rblV8FOMdVN/wOAqyQ==:17 a=IkcTkHD0fZMA:10 a=dKHAf1wccvYA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=f_yBiDhzxxtlnRg0lPwA:9 a=QEXdDO2ut3YA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from [127.0.0.1] (unknown [209.52.88.98]) by spqr.komquats.com (Postfix) with ESMTPSA id 75B5B2D9; Wed, 12 Apr 2023 09:55:17 -0700 (PDT) Date: Wed, 12 Apr 2023 09:54:59 -0700 From: Cy Schubert To: Charlie Li CC: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 In-Reply-To: <70739834-4eea-db30-63be-556bcfd881a1@freebsd.org> References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> <707e4671-d746-aa23-e340-6eb8f50f78c6@freebsd.org> <20230409205826.7802259d@cschubert.com> <4e85eb84-f0cc-2f8c-d3d9-1e016ede042a@freebsd.org> <20230410165406.51bcd958@cschubert.com> <70739834-4eea-db30-63be-556bcfd881a1@freebsd.org> Message-ID: List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-CMAE-Envelope: MS4xfLkdg39lZcvJHWIfF+7EX3DY3vyJHhCfI/x4hGhqKeP9Ghk1VfARpjVmwHrpr9E2XpZ26wOHMMCqLYTe4oA96ZSdHof4U1WZtgM46AXcYvZvHE+m7MpY GJCUcyeELtf1TLjSwAlSG5ac+QAwByu8jmhl1c/sR5sOBa6m+pbVxjZ09hFypnzACOw3s/t6KAvtwROMmZy2GjFVCSVjCsy1FRuhtgmyW9C5/WyCRA4N4Z9u jgVEBL/RJ7q8iNV0aRkAT1ZzkaywVgODYbKeQzbmUz8/EAQnHeq2tRIA6wzfHw+xqovJCQSkexou9THPZqvb5+NyCDxs6YiWVzpFojfGQ+vaili8gXyaF0il uyShrZ4Imj0d1SEl/ssuasyeRfyh8XP5GYZTQFXmyQ41LzKlFcg= X-Rspamd-Queue-Id: 4PxTNS4kxgz3N0w X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On April 12, 2023 8:51:09 AM PDT, Charlie Li wrote: >Cy Schubert wrote: >> I have a "sandhbox" pool, called t, used for /usr/obj and ports wrkdirs= , and other writes I can easily recreate on my laptop=2E Here are the resul= ts of my tests=2E >>=20 >> Method: >>=20 >> Initially I copied my /usr/obj from my two build machines (one amd64=2E= amd64 and an i386=2Ei386) to my "sandbox" zpool=2E >>=20 >> Next, with block_cloning disabled I did cp -R of the /usr/obj test file= s=2E Then a diff -qr=2E They source and target directories were the same=2E >>=20 >> Next, I cleaned up (rm -rf) the target directory to prepare for the >> block_clone enabled test=2E >>=20 >> Next, I did zpool checkpoint t=2E After this, zpool upgrade t=2E Pool t= now has block_cloning enabled=2E >>=20 >> I repeated the cp -R test from above followed by a diff -qr=2E Almost >> every file was different=2E The pool was corrupted=2E >>=20 >> I restored the pool by the following removing the corruption: >>=20 >>=20 >> slippy# zpool export t >> slippy# zpool import --rewind-to-checkpoint t >> slippy# >>=20 >> It is recommended that people avoid upgrading their zpools until the >> problem is fixed=2E >>=20 >As of af7624ed3145, I just did this with an md(4)-backed test pool, thoug= h with the second `cp -R` landing in a separate dataset, created and destro= yed for each test=2E No corruption either way=2E However, my poudriere buil= ds still output/package corrupted files (particularly those with null chara= cters), probably after install(1) invocations (not cp(1))=2E > You need to copy from/to the same dataset to reproduce the problem=2E Copy= ing from a source dataset to a different dataset will avoid block_cloning= =2E --=20 Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD=2Eorg NTP: Web: https://nwtime=2Eorg e^(i*pi)+1=3D0 Pardon the typos=2E Small keyboard in use=2E