From nobody Fri Mar 6 09:04:20 2026 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 4fS0pK6YzRz6TRYY for ; Fri, 06 Mar 2026 09:04:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fS0pK5V2Dz3NVK for ; Fri, 06 Mar 2026 09:04:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1772787865; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R/sUJh+xnMfLtcqU/Cfwy6j/ku6d8yIh69a6fssw76Y=; b=d3Sez2Bjw5pQ1hQC2njkLOdE+z6fALvL9cQ3nD3vOHJGb1H6+BZ3WyNK4lsY8GA9/vVv2k OhfMwtN/XveByA9jT7xHApUQ3QZWlX1hBdvdE75DWRJ7AMTLZXv/1vg2BuboeEECc2WIBY LlK80Kj9AM3w/jr/wMPa4w8HTFVswjvjwStI0SgfjbW2VB1En6CSIRD0ty1f8+HDurTqtD Rjp7/uqAS4iCdgCg1+uookOCX6YjSfV2FDCzXl8Mus/3d7+DdYU0QOCADv9civ1r/P3hGh P2FZCZqBX6Co9J0bqqifdH4sQf7nTQ3VeX/YQVCmHhL/5uNrJIf4FAdqgl1q+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1772787865; a=rsa-sha256; cv=none; b=bcLkLSi50p6ikXyJ2x2NSnqZ+AmCzP7I3udlRDlB0UOGxM9fHeFbe4v7tzWPio6g9lQKM6 br87W+HQuiq4tLxXXWpX+5ZxMiivhtM86c4ewC7KM2Pe7kPeKEMi67JIsS3vBHHp6PBtgo hHyaHcpJV/kJapku1A8QGHMsbtTQ9e00hHsrpYqxkI2jj7Iv9dQ4YE+Ac/7seCLukbcQs6 LIGgQEXy1i1X7rcJBdCrqLoxwHny9A6oqBlZlmeWALDF0moZf2iVHgOz6fVg/gr48JONGN +o57lytVahjg4bqo22Wa35ndsrHDh6C5eS+7R9PlQjBjqoPsXl1mLjc+oPk6uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1772787865; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R/sUJh+xnMfLtcqU/Cfwy6j/ku6d8yIh69a6fssw76Y=; b=n+5oUSJV9htxxVz6iAe5RoGhwZqY/SKnxM8x9tVzWyA5eRv3fvmBhoPKLAXgKEBwGjrqEj NLBtnq+KRMKA9TpeU6u0HV0dgyCaXBopeY4OJMtwO73ag/dpzfZX93/PVDJi4MrK/zh2br B8Wzj4qU+yWMx1K7B7aUpc/beo1QB8Ei8xFIJ1ekbfx4rJqen8U+oyX8ge4THNbActnRUh F6V/QQdSWGliuXcSgVKeTi1dXE0D9GHTCcDabkowRqvO/ayR4oxYzCWYX+8ga1/cOZYHka XHXd1J+CYOvVewVdw8xb1zdxMx4KjkMhe6zlNdwWQwQe1/9AY4WStVkj5zlyig== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fS0pK4ylwz1HM for ; Fri, 06 Mar 2026 09:04:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3290a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 06 Mar 2026 09:04:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Peter Holm Subject: git: 05cbd5fc2b48 - main - stress2: Added a new test scenario 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: pho X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 05cbd5fc2b481d6503c69be95fe9a6d9a287bc6d Auto-Submitted: auto-generated Date: Fri, 06 Mar 2026 09:04:20 +0000 Message-Id: <69aa9894.3290a.a8e8791@gitrepo.freebsd.org> The branch main has been updated by pho: URL: https://cgit.FreeBSD.org/src/commit/?id=05cbd5fc2b481d6503c69be95fe9a6d9a287bc6d commit 05cbd5fc2b481d6503c69be95fe9a6d9a287bc6d Author: Peter Holm AuthorDate: 2026-03-06 09:03:11 +0000 Commit: Peter Holm CommitDate: 2026-03-06 09:03:11 +0000 stress2: Added a new test scenario --- tools/test/stress2/misc/renameat2.sh | 116 +++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) diff --git a/tools/test/stress2/misc/renameat2.sh b/tools/test/stress2/misc/renameat2.sh new file mode 100755 index 000000000000..8e75fabb321b --- /dev/null +++ b/tools/test/stress2/misc/renameat2.sh @@ -0,0 +1,116 @@ +#!/bin/sh + +# +# Copyright (c) 2026 Peter Holm +# +# SPDX-License-Identifier: BSD-2-Clause +# + +# Simple renameat2 test scenario + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +. ../default.cfg +err=0 +prog=$(basename "$0" .sh) + +cat > /tmp/$prog.c < +#include +#include +#include +#include +#include + +int +main(void) +{ + int fd; + char *f1 = "f1"; + char *f2 = "f2"; + char *t1 = "t1"; + + if ((fd = open(f1, O_RDWR | O_CREAT, DEFFILEMODE)) == -1) + err(1, "open(%s)", f1); + close(fd); + if ((fd = open(f2, O_RDWR | O_CREAT, DEFFILEMODE)) == -1) + err(1, "open(%s)", f2); + close(fd); + + if (renameat2(AT_FDCWD, f1, AT_FDCWD, t1, AT_RENAME_NOREPLACE) == -1) + err(1, "renameat2(%s, %s)", f1, t1); + if (renameat2(AT_FDCWD, f2, AT_FDCWD, t1, AT_RENAME_NOREPLACE) == 0) + errx(1, "renameat2(%s, %s)", f2, t1); + if (errno != EEXIST && errno != EOPNOTSUPP) + err(1, "renameat2(%s, %s)", f2, t1); + if (unlink(f2) != 0) + err(1, "unlink(%s)", f2); + if (unlink(t1) != 0) + err(1, "unlink(%s)", t1); +} +EOF +cc -o /tmp/$prog -Wall -Wextra -O0 /tmp/$prog.c || exit 1 + +echo ufs +set -eu +mount | grep -q "on $mntpoint " && umount -f $mntpoint +mdconfig -l | grep -q md$mdstart && mdconfig -d -u $mdstart +mdconfig -s 1g -u $mdstart +newfs $newfs_flags /dev/md$mdstart > /dev/null +mount /dev/md$mdstart $mntpoint +set +e + +cd $mntpoint +/tmp/$prog || err=$((err+1)) +cd - +umount $mntpoint +mdconfig -d -u $mdstart + +echo tmpfs +mount -t tmpfs dummy $mntpoint +cd $mntpoint +/tmp/$prog || err=$((err+1)) +cd - +umount $mntpoint + +echo msdosfs +if [ -x /sbin/mount_msdosfs ]; then + mdconfig -a -t swap -s 1g -u $mdstart + gpart create -s bsd md$mdstart > /dev/null + gpart add -t freebsd-ufs md$mdstart > /dev/null + part=a + newfs_msdos -F 16 -b 8192 /dev/md${mdstart}$part > /dev/null 2>&1 + mount_msdosfs -m 777 /dev/md${mdstart}$part $mntpoint + + cd $mntpoint + /tmp/$prog || err=$((err+1)) + cd - + umount $mntpoint +fi +echo zfs +u1=$mdstart +u2=$((u1 + 1)) + +mdconfig -l | grep -q md$u1 && mdconfig -d -u $u1 +mdconfig -l | grep -q md$u2 && mdconfig -d -u $u2 + +mdconfig -s 1g -u $u1 +mdconfig -s 1g -u $u2 + +zpool list | egrep -q "^stress2_tank" && zpool destroy stress2_tank +[ -d /stress2_tank ] && rm -rf /stress2_tank +zpool create stress2_tank raidz md$u1 md$u2 +zfs create stress2_tank/test + +cd /stress2_tank/test +/tmp/$prog || err=$((err+1)) +cd - + +zfs umount stress2_tank/test +zfs destroy -r stress2_tank +zpool destroy stress2_tank +mdconfig -d -u $u1 +mdconfig -d -u $u2 + +rm -f /tmp/$prog /tmp/$prog.c +exit $err