From nobody Wed Apr 12 16:46:50 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 4PxTBk2Plxz454x7; Wed, 12 Apr 2023 16:46:54 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-oa1-x31.google.com (mail-oa1-x31.google.com [IPv6:2001:4860:4864:20::31]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PxTBj0dccz4bGq; Wed, 12 Apr 2023 16:46:53 +0000 (UTC) (envelope-from mjguzik@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-oa1-x31.google.com with SMTP id 586e51a60fabf-1878504c22aso900546fac.8; Wed, 12 Apr 2023 09:46:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1681318011; x=1683910011; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=FKf9Hu86nSUGRR2PN/wKn2affB4Cg3DkgBIWutvPxgA=; b=cn7zyWLieEPty29SJdfekA6DGMDACGDH8phT9X7Z7t3hHFFfgkdMuu+5owsUZKQsGC p2CYOO6lpdr9EV5894U8i+lZLXCxi3+ge5it+SHbnVPBU2vWO9HsTBFpuu6N1edrZYSz sMWjk2CX+LC4iMGYJ4f5KmQ9tijbgmYyTpLvnKQWlSSjWSI3ISK6Eu6J+CYfjCGVRXdy HAwgDgqsGtR+auQ6L31xA6QM/sbR3W3/FTi9deQu/LScYcDKPv/h8njwm+IgR1leDsO+ DBoRAgQf53pKBA/w3sQmhz/sgIGpBkjaR1BlcJAmt1NtyEX0seqZJB9N523OsHomvBv6 S1kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681318011; x=1683910011; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=FKf9Hu86nSUGRR2PN/wKn2affB4Cg3DkgBIWutvPxgA=; b=JFQjqs0mhPT36ecz0l5UEqJrOrY8K+Z/hwjLcDCDrmaegydweEMVJMtjucNeRgImQg eZHOdNOJ9o3cLq78sv9dHQM9pXRIlzrLMYWYscMqDWw+Y6LalR3yjsIyR9iEBzxlajjf ODLo0wXfhd5pTuRWN79Y6dljidqs4G3aEgaVoHmaRPFVxWeV/uTmgB4Sisqgyv65Anro S+Df5BPx+R2phXP6Umr5YxFtbpZhJUCb8azVFVT2AO1Qq/ASpfht7L+fn2LmNgsi1H0w K3YC0uk9fbjJIq8AAm65SZyJoFJeNYA44KKJAdN91rPUKKd/R4eOOCKFauUfykUTCZzX EZlA== X-Gm-Message-State: AAQBX9fSeebUkiinsDcRaYPVJ6fYg4QXtdyYVMQQCpPFoCqJmtEsScL9 H3Vffl9PdtSNl7KjgKRccm1biD6zQY/8W+Y6d84= X-Google-Smtp-Source: AKy350Ye+Tv+cDLyrfWiHsQH78wpZFTzm0YBwfPhFS7R077bc7PU1LVLhOieJZEvsDIe5CybjXu9fiQ1Uu0O4J/7mEU= X-Received: by 2002:a05:6870:11:b0:183:fc80:7361 with SMTP id a17-20020a056870001100b00183fc807361mr1347581oaa.4.1681318011668; Wed, 12 Apr 2023 09:46:51 -0700 (PDT) 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 Received: by 2002:a8a:28c:0:b0:49c:b071:b1e3 with HTTP; Wed, 12 Apr 2023 09:46:50 -0700 (PDT) In-Reply-To: <20230412182813.63180c6a@thor.intern.walstatt.dynvpn.de> 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> <20230412182813.63180c6a@thor.intern.walstatt.dynvpn.de> From: Mateusz Guzik Date: Wed, 12 Apr 2023 18:46:50 +0200 Message-ID: Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 To: FreeBSD User Cc: Charlie Li , Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 4PxTBj0dccz4bGq X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:15169, ipnet:2001:4860:4864::/48, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On 4/12/23, FreeBSD User wrote: > Am Wed, 12 Apr 2023 11:51:09 -0400 > Charlie Li schrieb: > >> 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. Here are the results of my tests. >> > >> > Method: >> > >> > Initially I copied my /usr/obj from my two build machines (one >> > amd64.amd64 and an >> > i386.i386) to my "sandbox" zpool. >> > >> > Next, with block_cloning disabled I did cp -R of the /usr/obj test >> > files. Then a diff -qr. >> > They source and target directories were the same. >> > >> > Next, I cleaned up (rm -rf) the target directory to prepare for the >> > block_clone enabled test. >> > >> > Next, I did zpool checkpoint t. After this, zpool upgrade t. Pool t now >> > has block_cloning >> > enabled. >> > >> > I repeated the cp -R test from above followed by a diff -qr. Almost >> > every file was different. The pool was corrupted. >> > >> > I restored the pool by the following removing the corruption: >> > >> > >> > slippy# zpool export t >> > slippy# zpool import --rewind-to-checkpoint t >> > slippy# >> > >> > It is recommended that people avoid upgrading their zpools until the >> > problem is fixed. >> > >> As of af7624ed3145, I just did this with an md(4)-backed test pool, >> though with the second `cp -R` landing in a separate dataset, created >> and destroyed for each test. No corruption either way. However, my >> poudriere builds still output/package corrupted files (particularly >> those with null characters), probably after install(1) invocations (not >> cp(1)). >> > > I still have corrupt files on the /usr/ports tree (located on ZFS, with > feature@block_cloning active): > > [...] > Installing man pages and online manual > mkdir /usr/ports/www/apache24/work/stage/usr/local/share/doc/apache24 > cd /usr/ports/www/apache24/work/httpd-2.4.57/docs/manual && cp -rp * > /usr/ports/www/apache24/work/stage/usr/local/share/doc/apache24 install -m > 0644 > /usr/ports/www/apache24/files/no-accf.conf > /usr/ports/www/apache24/work/stage/usr/local/etc/apache24/Includes/ install > -m 0644 > /usr/ports/www/apache24/files/README_modules.d > /usr/ports/www/apache24/work/stage/usr/local/etc/apache24/modules.d/ > /usr/bin/strip > /usr/ports/www/apache24/work/stage/usr/local/libexec/apache24/mod_*.so > /bin/rm -f > /usr/ports/www/apache24/work/stage/usr/local/share/apache24/build/ecp.???????? > 2>/dev/null > install -m 555 > /usr/ports/www/apache24/work/httpd-2.4.57/support/check_forensic > /usr/ports/www/apache24/work/stage/usr/local/sbin ====> Compressing man > pages (compress-man) > ===> Staging rc.d startup script(s) ===> Installing for apache24-2.4.57 > ===> Registering > installation for apache24-2.4.57 pkg-static: > pkg_checksum_hash_sha256_file(read failed): > Input/output error pkg-static: pkg_checksum_hash_sha256_file(read failed): > Input/output error > pkg-static: pkg_checksum_hash_sha256_file(read failed): Input/output error > pkg-static: > pkg_checksum_hash_sha256_file(read failed): Input/output error pkg-static: > pkg_checksum_hash_sha256_file(read failed): Input/output error pkg-static: > pkg_checksum_hash_sha256_file(read failed): Input/output error > > www/apache24 is now ALWAYS droping this corruption, even after scrubbing the > pool. > > This one is the same in my case: > > [...] > > cd /usr/ports/devel/ruby-gems/work/stage/usr/local/ && /usr/bin/find -ds > lib/ruby/gems/3.1/doc/ ! -type d >> > /usr/ports/devel/ruby-gems/work/.PLIST.mktmp ====> > Compressing man pages (compress-man) ===>>> Starting check for runtime > dependencies > ===>>> Gathering dependency list for devel/ruby-gems from ports > ===>>> Dependency check complete for devel/ruby-gems > > ===>>> All >> rubygem-addressable-2.8.1 >> devel/ruby-gems (3/27) > > ===> Installing for ruby31-gems-3.4.10 > ===> Registering installation for ruby31-gems-3.4.10 as automatic > pkg-static: pkg_checksum_hash_sha256_file(read failed): Input/output error > pkg-static: pkg_checksum_hash_sha256_file(read failed): Input/output error > pkg-static: pkg_checksum_hash_sha256_file(read failed): Input/output error > pkg-static: pkg_checksum_hash_sha256_file(read failed): Input/output error > *** Error code 1 > > Stop. > make[1]: stopped in /usr/ports/devel/ruby-gems > > > Pool is then marked corrupt (was scrubbed after the last corruption): > > [...] > > pool: POOL00 > state: ONLINE > status: One or more devices has experienced an error resulting in data > corruption. Applications may be affected. > action: Restore the file in question if possible. Otherwise restore the > entire pool from backup. > see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-8A > scan: scrub in progress since Wed Apr 12 18:07:02 2023 > 1.45T scanned at 2.01G/s, 139G issued at 193M/s, 13.2T total > 0B repaired, 1.02% done, 19:49:53 to go > config: > > NAME STATE READ WRITE CKSUM > POOL00 ONLINE 0 0 0 > raidz1-0 ONLINE 0 0 0 > gpt/pool00 ONLINE 0 0 0 > gpt/pool01 ONLINE 0 0 0 > gpt/pool02 ONLINE 0 0 0 > gpt/pool03 ONLINE 0 0 0 > > errors: 22 data errors, use '-v' for a list > > [...] > > errors: Permanent errors have been detected in the following files: > > > /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/site_ruby/3.1/rubygems/optparse/lib/optionparser.rb > > /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/site_ruby/3.1/rubygems/optparse.rb > > /usr/ports/www/apache24/work/stage/usr/local/www/apache24/icons/small/blank.gif > > /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/site_ruby/3.1/rubygems/resolver/molinillo.rb > > /usr/ports/www/apache24/work/stage/usr/local/share/doc/apache24/images/left.gif > > /usr/ports/www/apache24/work/stage/usr/local/share/doc/apache24/images/right.gif > > /usr/ports/www/apache24/work/stage/usr/local/share/doc/apache24/images/down.gif > > /usr/ports/www/apache24/work/stage/usr/local/share/doc/apache24/images/pixel.gif > > /usr/ports/devel/ruby-gems/work/stage/usr/local/lib/ruby/site_ruby/3.1/rubygems/tsort.rb > > /usr/ports/www/apache24/work/stage/usr/local/share/doc/apache24/images/up.gif > > > -- > O. Hartmann > https://github.com/openzfs/zfs/pull/14739/files here is a fix you can apply on top of sys/contrib/openzfs, i have no idea how much it can do though -- Mateusz Guzik