Received: by 2002:a05:7412:e794:b0:fa:551:50a7 with SMTP id o20csp1928495rdd; Thu, 11 Jan 2024 13:47:44 -0800 (PST) X-Google-Smtp-Source: AGHT+IFmz/3SnAQXI7i56a/z21Q9OICz+C7ZaZlC/AR8NIgGSpmTROjY8hrn3lZyOJpQcvi7AM+b X-Received: by 2002:a17:90b:151:b0:28d:bfb6:a969 with SMTP id em17-20020a17090b015100b0028dbfb6a969mr435086pjb.46.1705009664081; Thu, 11 Jan 2024 13:47:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1705009664; cv=none; d=google.com; s=arc-20160816; b=hhFa6qs4WdAdS5AYzs9T7mM6YImccfivINjIV7JOczO7lnEIq3U1wzthI+5iqu+VS0 n9otRcZalxIT1tQ3eSzgJ3UCPJ8Jcade9c4J0nETvsZKU/lMZJlj+Sc5nLIBX10AsyWn pse1bs/keMAaPxv74szOA+FHRAX7GtYw9Yvgdj1M/63ya84zb4KZDgAF6Xj/4ofMhH3Y Tt911QvZlr8ePwyFjyrDBIZg0iFygDBJNOV9okaQMXFC6esBnJ0DOUOx4JpPAHqBiatx lovhZfMiVBjUmW6SHg4P6P8Uh5ppH8W0xEznjpG9H28L/HzXJqkus5yQ3tKqq14YwhBv GJEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date:dkim-signature; bh=cj5xNnj4sABAIS2DCVsANhr10gs7y2WtP48ncAov7Ow=; fh=yd7Ja+kyuL2yyOOKdU3/+1U5qWTzBF77bbl54Yavey4=; b=WKJDRXtRrpjJjHJz/zkbSWEY7o4GvU3VSvHga7fcxhMn5WpSvVL7Vn3lW1VJA4cZlL /lf7fh9mh53VmdjHs5v3/stUvAeGkHebC0UP17+Kt4IAz7XajKbBl/aXNN3ZHzIciBkE 69c/v62TGpAr+UTDpjqWR5vpd0ij9r3qKS4e6NaHvUgurt7503bzPckjUczCJyb+Fxmh hTzWd4cJSLiBdPPf/Z1LkPpBFjK5vphb7SvkNM9Lc31ivxtiUiFScVBt1V+sXWLMZ5uU 1OD+p6729P+IgUQQmGBURBvphttM5+TtiLlpYZ69z4mHRzRnZ2tnRKlf1iy6kgFbrfOJ xKPA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=hheLtr7n; spf=pass (google.com: domain of linux-kernel+bounces-24098-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-24098-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id v23-20020a17090a899700b0028cf7006c59si1480002pjn.103.2024.01.11.13.47.43 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Jan 2024 13:47:44 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-24098-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=hheLtr7n; spf=pass (google.com: domain of linux-kernel+bounces-24098-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-24098-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id B309C28877D for ; Thu, 11 Jan 2024 21:47:43 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 0388358213; Thu, 11 Jan 2024 21:47:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hheLtr7n" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 01AEF58136; Thu, 11 Jan 2024 21:47:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B170CC433C7; Thu, 11 Jan 2024 21:47:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1705009651; bh=Fu1ypAtEiesdzAwaXB0NR173q0atqGGzYX/w5m6UGjI=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=hheLtr7nOCbCFXbzvVRgp2BcuSbaEVTJK6kby1LPvpB40jQK0L5cbYnXZ2GafJHvu 6leGA8iC2zylszpSetyrvNylol9U/O0snc8H6leCMBhG3Zx/bziqgLhtG9uxZFnvw3 6uNflX+84F9NI/Uh7HuW4x1jOBYWv0/PtG09pTZ/EUxXVPsho/ouEmu1ZWsIpp9BCP 5Y9P5hXK2PZstVvU4V3n4TmDdgmAxuOA4gyzXgQL5+s17png1dNhzwfnLzJR1yNDcn hy3UT5maSUHtlVyTZINb2l2JGyKlWwmCAAljaw6/GU/L723ZmKRNdIntERTgY2hwoV Ubivlfzk2TDgg== Date: Thu, 11 Jan 2024 21:47:26 +0000 From: Mark Brown To: Kent Overstreet Cc: Kees Cook , Linus Torvalds , linux-bcachefs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org, Nikolai Kondrashov Subject: Re: [GIT PULL] bcachefs updates for 6.8 Message-ID: References: <202401101525.112E8234@keescook> <6pbl6vnzkwdznjqimowfssedtpawsz2j722dgiufi432aldjg4@6vn573zspwy3> <202401101625.3664EA5B@keescook> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="Oaeocmcu2u0GtUMN" Content-Disposition: inline In-Reply-To: X-Cookie: Does the name Pavlov ring a bell? --Oaeocmcu2u0GtUMN Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Thu, Jan 11, 2024 at 12:38:57PM -0500, Kent Overstreet wrote: > On Thu, Jan 11, 2024 at 03:35:40PM +0000, Mark Brown wrote: > > IME the actually running the tests bit isn't usually *so* much the > > issue, someone making a new test runner and/or output format does mean a > > bit of work integrating it into infrastructure but that's more usually > > annoying than a blocker. > No, the proliferation of test runners, test output formats, CI systems, > etc. really is an issue; it means we can't have one common driver that > anyone can run from the command line, and instead there's a bunch of > disparate systems with patchwork integration and all the feedback is nag > emails - after you've finished whan you were working on instead of > moving on to the next thing - with no way to get immediate feedback. It's certainly an issue and it's much better if people do manage to fit their tests into some existing thing but I'm not convinced that's the big reason why you have a bunch of different systems running separately and doing different things. For example the enterprise vendors will naturally tend to have a bunch of server systems in their labs and focus on their testing needs while I know the Intel audio CI setup has a bunch of laptops, laptop like dev boards and things in there with loopback audio cables and I think test equipment plugged in and focuses rather more on audio. My own lab is built around on systems I can be in the same room as without getting too annoyed and does things I find useful, plus using spare bandwidth for KernelCI because they can take donated lab time. I think there's a few different issues you're pointing at here: - Working out how to run relevant tests for whatever area of the kernel you're working on on whatever hardware you have to hand. - Working out exactly what other testers will do. - Promptness and consistency of feedback from other testers. - UI for getting results from other testers. and while it really sounds like your main annoyances are the bits with other test systems it really seems like the test runner bit is mainly for the first issue, possibly also helping with working out what other testers are going to do. These are all very real issues. > And it's because building something shiny and new is the fun part, no > one wants to do the grungy integration work. I think you may be overestimating people's enthusiasm for writing test stuff there! There is NIH stuff going on for sure but lot of the time when you look at something where people have gone off and done their own thing it's either much older than you initially thought and predates anything they might've integrated with or there's some reason why none of the existing systems fit well. Anecdotally it seems much more common to see people looking for things to reuse in order to save time than it is to see people going off and reinventing the world. > > > example tests, example output: > > > https://evilpiepirate.org/git/ktest.git/tree/tests/bcachefs/single_device.ktest > > > https://evilpiepirate.org/~testdashboard/ci?branch=bcachefs-testing > > For example looking at the sample test there it looks like it needs > > among other things mkfs.btrfs, bcachefs, stress-ng, xfs_io, fio, mdadm, > > rsync > Getting all that set up by the end user is one command: > ktest/root_image create > and running a test is one morecommand: > build-test-kernel run ~/ktest/tests/bcachefs/single_device.ktest That does assume that you're building and running everything directly on the system under test and are happy to have the test in a VM which isn't an assumption that holds universally, and also that whoever's doing the testing doesn't want to do something like use their own distro or something - like I say none of it looks too unreasonable for filesystems. > > and a reasonably performant disk with 40G of space available. > > None of that is especially unreasonable for a filesystems test but it's > > all things that we need to get onto the system where we want to run the > > test and there's a lot of systems where the storage requirements would > > be unsustainable for one reason or another. It also appears to take > > about 33000s to run on whatever system you use which is distinctly > > non-trivial. > Getting sufficient coverage in filesystem land does take some amount of > resources, but it's not so bad - I'm leasing 80 core ARM64 machines from > Hetzner for $250/month and running 10 test VMs per machine, so it's > really not that expensive. Other subsystems would probably be fine with > less resources. Some will be, some will have more demanding requirements especially when you want to test on actual hardware rather than in a VM. For example with my own test setup which is more focused on hardware the operating costs aren't such a big deal but I've got boards that are for various reasons irreplaceable, often single instances of boards (which makes scheduling a thing) and for some of the tests I'd like to get around to setting up I need special physical setup. Some of the hardware I'd like to cover is only available in machines which are in various respects annoying to automate, I've got a couple of unused systems waiting for me to have sufficient bandwidth to work out how to automate them. Either way I don't think the costs are trival enough to be completely handwaved away. I'd also note that the 9 hour turnaround time for that test set you're pointing at isn't exactly what I'd associate with immediate feedback. --Oaeocmcu2u0GtUMN Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAmWgYe0ACgkQJNaLcl1U h9AGUwf9EzzYc9GC3VLgQW2jSAvt8fpBW6u0etaKnnghvRUvtKxavMkeUvUqH/dl ozDTR8K91RDvuBe8TatVwk7OsW50oQVFVWQvSRz6SCY2NUPzBL8r7NDgzyCegTU9 X2LkXX9xT6YUtRFW7xSBuuYXwXMes7nFG0s8CzPhOJAl9MmWbxL3A1PCKPk4rQu4 hVkn7BbAELXanc8hBqXHbcak8xiNThnIYGRleEzRcQ9R6KBGCdJ8nr114rapXGE5 17oGv909lvC3B2cXCFXZE1g83fiMXFKJtRVNAWf+uUihr2oH380cymHXUhCzTiPd mO0vBJFc9XKQ5OdPxplj6FSkqVGZaQ== =TLYT -----END PGP SIGNATURE----- --Oaeocmcu2u0GtUMN--