From nobody Fri Jan 13 17:53:56 2023 X-Original-To: freebsd-fs@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 4NtpvP16Zzz2sXB1 for ; Fri, 13 Jan 2023 17:54:09 +0000 (UTC) (envelope-from asomers@gmail.com) Received: from mail-vs1-f51.google.com (mail-vs1-f51.google.com [209.85.217.51]) (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 4NtpvN6Vgjz3Mml for ; Fri, 13 Jan 2023 17:54:08 +0000 (UTC) (envelope-from asomers@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-vs1-f51.google.com with SMTP id k4so22953800vsc.4 for ; Fri, 13 Jan 2023 09:54:08 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=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=0YIB+0/7Fto+SAo8Rls6UsN954Hf3hY9HxU92Bz8L9s=; b=rrezf6fPHwGwFLmKx/lqZKwaH2ClitB2UWrwQyL+mRqE0R9NRuK4DIpcigMPmjP1V/ frEYUV9revoAcsZkwpaVmPyU3w4Kdv6W6Sspq7WPb53qnFk1eCpV0OjZjMixIIQawrNA TZrib8BE/4p0n+Y9UUhMPx0vfM3OCWqXuDgIUiwgF4LKzY4ptpvqggBS4AdtwHCxOyYb LgYQ37RXCGUSDFpt+qTCNUQMwnHDi5Fev29MnJhoBr+1LTCq3GNAkCUsFFPyn8+KHYzn CHj1xqQkfHWs0BW4J3FickMhVXu/dJLkSZqcVibVoTZwif2ALY0vp81GICGPGEnuUUnu siZA== X-Gm-Message-State: AFqh2krG/5yrJwMScuWWgeR8weT0nniYYmJuNoQ10jAP/xzSfA04DoOB kiTixoOy4NcbSH87B2/IA3UqO2c99Ndfu0bILigUz+Yg X-Google-Smtp-Source: AMrXdXvezrogh+8NLM6MCZvwj7hY3OSJn09xU3mRxQ7Iq8K2A7ihYCjz//EkZ3Btr9ISPE9Y4c9Q859tq5podf72Cuw= X-Received: by 2002:a67:f545:0:b0:3ce:ebd8:d742 with SMTP id z5-20020a67f545000000b003ceebd8d742mr3912703vsn.11.1673632448229; Fri, 13 Jan 2023 09:54:08 -0800 (PST) List-Id: Filesystems List-Archive: https://lists.freebsd.org/archives/freebsd-fs List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-fs@freebsd.org MIME-Version: 1.0 References: In-Reply-To: From: Alan Somers Date: Fri, 13 Jan 2023 10:53:56 -0700 Message-ID: Subject: Re: fsx revisted To: Warner Losh Cc: freebsd-fs Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 4NtpvN6Vgjz3Mml X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On Fri, Jan 13, 2023 at 10:49 AM Warner Losh wrote: > > > > On Fri, Jan 13, 2023 at 10:35 AM Alan Somers wrote: >> >> fsx (tools/regression/fsx) is very useful at finding file system bugs. >> I've used it to find several myself. But it's always had one nagging >> problem: because it's neither installed in the base system, nor >> available from ports, it's difficult to use in CI pipelines. I had >> some free time around New Year's, so I fixed that problem. I could've >> just made a port for it, but instead I rewrote the whole thing. The >> rewrite is 100% compatible with the original (except for the -s >> option, which I consider to be a bug), to the extent that identical >> seed values will produce identical command sequences. In the future, >> though, I plan to add new features that will break that compatibility. >> For example, fspacectl operations. >> >> Check it out if you've ever used the original. I'd appreciate any >> feedback, feature requests, etc. >> >> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=268938 > > > I like this idea. I've not looked at the code yet, but love more tests. > > How hard would it be to integrate into ATF so we can run it as part of make test? ATF has the ability to skip tests when required packages aren't installed (which it does for python tests)... > > Warner Easy. I had that in mind when I did this. We could add an atf-sh test that creates a new ZFS file system and runs fsx on it for a fixed number of operations. Likewise for tmpfs, ufs, etc.