From nobody Tue Apr 21 16:41:18 2026 X-Original-To: freebsd-testing@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 4g0SmJ67K7z6YTmd for ; Tue, 21 Apr 2026 16:41:20 +0000 (UTC) (envelope-from markj@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4g0SmJ4XhYz3rYG; Tue, 21 Apr 2026 16:41:20 +0000 (UTC) (envelope-from markj@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1776789680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=r1d3Iico4bsK6ybCwC/dmBtkksWpW1+wGQEzTpG7MKo=; b=ZtD2d02rT92XWSQXymN7Yd87u5DFMpmrIY7bUiaVy7oS34D1eqkVWsqJW12fyxNQbEbyhB Z+vZX6yqOFzhbGjMPorKlo++tzUAp+Xt8qBLyIhbz3Ipt/aZh2VViYUXilYwMw+bnlaahK FdeMD97EQWgoJ/MSO8mROOA6y1TsNrpqxwTJBtw81aRR9ykpWsbxFSkfROPC4LcgYjvrHv hOMGRZNBt6g1eP0Evw+VqfKrQr8sDouIB0AudpUygNITAgMmN/rRssH6AXH51ZXqrTLXem VBnfIarRIHabm9B0aZ4cuMss9bjl6c/k7YIS5xj8j5a4t9jdT41988o6moCsaw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1776789680; a=rsa-sha256; cv=none; b=LWqGnM7c+ZAmjI4Se/9mKXyFtv/7/BL//F0YnkRjaGC0OtXbjAi37Yh8P5MsrYix4OIvHQ q6PNhld9GU3tDfT9Bc3a8OyPe6xrCqe+XryZLrinMORlEdt4/ZbWdPo9ZT3FX+0tPl5Kuj d3FOrKh5XRMkUP7tBsLTDC8+Mo6bUgfyBPCnRBQxOBMq+/E5+I6zuM02LPmai44e1gk7wf pyaLjG2qjOkNDZdq7S02uiS8hwiNuj6acD5vvFv2bDEwxQ3AJNEaRlid17sCS/UIZmzlMI oilvkDnEfHwMW14wJWInT5TP+d/Uswb2IeSQ50aertZQVE6KcjUy4N8mjWvXgQ== 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=1776789680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=r1d3Iico4bsK6ybCwC/dmBtkksWpW1+wGQEzTpG7MKo=; b=l4nLyTJrmrnNc8QQusBkK1GBcmT3/Zl+t4zOn3OrVVHKL/l7S5zkGT2/3p8WbHnzV+fqiY rlmEVaxfh9AcAt5C6NQnHnZfn+vyir5fzp9sMCnJBYtaZXCTsgH026pZDW6+nZsyhKKaYL qPKE+dJbKF7VU26bsXJv63wpZazlnE0vJakaVOc/WTBzh7HuRxhS6iy248OlnWqidJ39Pi 0xcM8L7T3VT2EnM8gn/DPB08ryotoTtgHPEjWdSVAYoyHJlm0O1YfIWQY4/9IM0qYYxPDx N01JTWXlYdI4v4gAI0w8LzZbE0OmXGlehl3oY798Aor+3cHKpbhCxfR0+HhlnQ== Received: from nuc (192-0-220-237.cpe.teksavvy.com [192.0.220.237]) (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 did not present a certificate) (Authenticated sender: markj) by smtp.freebsd.org (Postfix) with ESMTPSA id 4g0SmJ2jlpz164L; Tue, 21 Apr 2026 16:41:20 +0000 (UTC) (envelope-from markj@freebsd.org) Date: Tue, 21 Apr 2026 12:41:18 -0400 From: Mark Johnston To: Alan Somers Cc: freebsd-testing@freebsd.org Subject: Re: pjdfstest integration Message-ID: References: List-Id: Testing List-Archive: https://lists.freebsd.org/archives/freebsd-testing List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: freebsd-testing@freebsd.org Sender: owner-freebsd-testing@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Tue, Apr 21, 2026 at 09:41:31AM -0600, Alan Somers wrote: > On Tue, Apr 21, 2026 at 9:11 AM Mark Johnston wrote: > > > > Hi, I noticed that we install pjdfstest to /usr/tests/sys/pjdfstest, > > but: > > - it's not hooked up to the test suite, i.e., > > "kyua test -k /usr/tests/Kyuafile" doesn't run it, > > - contrib/pjdfstest doesn't seem to be updated regularly, > > - the configuration is hard-coded, i.e., I can't easily run it against a > > filesystem of my choice. > > > > How hard would it be to parameterize the tests so that we can run the > > tests again a list of filesystems? For each filesystem we'd have some > > little script that sets up some scratch space, creates an empty > > filesystem and points pjdfstest at it. In some cases we'd need the test > > runner to specify some additional variables, e.g., for p9fs you want the > > test runner to provide a share, as we currently only support the virtio > > transport. I'm not sure if kyua can pass variables to a TAP test, so > > the solution might be to wrap each pjdfstest run with an ATF test case > > which handles the setup. > > > > Is anyone interested in working on these things? > > Yes, yes and yes. > > I was indeed working on a change to pjdfstest which, among other > things, would read a config file for each file system under test. The > config file specifies things like whether posix_fallocate is supported > on that file system and which file flags are supported. The change > also drastically speeds up pjdfstest's runtime. > > We did that as part of GSoC 2022. The status of the project is that > it's 99% complete, but requires somebody to comb through 4000 SLOC > line by line to make sure nothing got left out. That's very tedious, > which is why nobody has done it yet. I would LOVE to get it finished, > but I've never made the time. > The rewrite also relies on some ugly macro syntax. We did that > deliberately to save time, but it does make the code ugly, and a > little bit harder to review. It might be worth investing the time to > rewrite those macros more cleanly. > > Using the new pjdfstest, it would be quite easy to add an ATF test for > each file system. atf-sh would format the file system under test, > then call pjdfstest with the appropriate per-filesystem config file. Do you have a pointer to this work anywhere? I can't promise to complete it, but I'm pretty motivated to stand something up for p9fs.