From: Daniel Gomez <da.gomez@samsung.com>
To: Theodore Ts'o <tytso@mit.edu>,
Kent Overstreet <kent.overstreet@linux.dev>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
<linux-bcachefs@vger.kernel.org>, <linux-fsdevel@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Subject: Re: [GIT PULL] bcachefs fixes for 6.12-rc2
Date: Thu, 10 Oct 2024 10:51:24 +0200 [thread overview]
Message-ID: <D4RZXQ8GR1C4.35P1KFUAWX09N@samsung.com> (raw)
In-Reply-To: <20241009035139.GB167360@mit.edu>
On Wed Oct 9, 2024 at 5:51 AM CEST, Theodore Ts'o wrote:
> On Sun, Oct 06, 2024 at 12:33:51AM -0400, Kent Overstreet wrote:
>>
>> Correct me if I'm wrong, but your system isn't available to the
>> community, and I haven't seen a CI or dashboard for kdevops?
>
> It's up on github for anyone to download, and I've provided pre-built
> test appliance so people don't have to have downloaded xfstests and
> all of its dependencies and build it from scratch. (That's been
> automated, of course, but the build infrastructure is setup to use a
> Debian build chroot, and with the precompiled test appliances, you can
> use my test runner on pretty much any Linux distribution; it will even
> work on MacOS if you have qemu built from macports, although for now
> you have to build the kernel on Linux distro using Parallels VM[1].)
>
> I'll note that IMHO making testing resources available to the
> community isn't really the bottleneck. Using cloud resources,
> especially if you spin up the VM's only when you need to run the
> tests, and shut them down once the test is complete, which
> gce-xfstests does, is actually quite cheap. At retail prices, running
> a dozen ext4 file system configurations against xfstests's "auto"
> group will take about 24 hours of VM time, and including the cost of
> the block devices, costs just under two dollars USD. Because the
> tests are run in parallel, the total wall clock time to run all of the
> tests is about two and a half hours. Running the "quick" group on a
> single file system configuration costs pennies. So the $300 of free
> GCE credits will actually get someone pretty far!
>
> No, the bottleneck is having someone knowledgeable enough to interpret
> the test results and then finding the root cause of the failures.
> This is one of the reasons why I haven't stressed all that much about
> dashboards. Dashboards are only useful if the right person(s) is
> looking at them. That's why I've been much more interested in making
> it stupidly easy to run tests on someone's local resources, e.g.:
>
> https://github.com/tytso/xfstests-bld/blob/master/Documentation/kvm-quickstart.md
>
> In fact, for most people, the entry point that I envision as being
> most interesting is that they download the kvm-xfstests, and following
> the instructions in the quickstart, so they can run "kvm-xfstests
> smoke" before sending me an ext4 patch. Running the smoke test only
> takes 15 minutes using qemu, and it's much more convenient for them to
> run that on their local machine than to trigger the test on some
> remote machine, whether it's in the cloud or someone's remote test
> server.
>
> In any case, that's why I haven't been interesting in working with
> your test infrastructure; I have my own, and in my opinion, my
> approach is the better one to make available to the community, and so
> when I have time to improve it, I'd much rather work on
> {kvm,gce,android}-xfstests.
>
> Cheers,
>
> - Ted
>
>
> [1] Figuring out how to coerce the MacOS toolchain to build the Linux
> kernel would be cool if anyone ever figures it out. However, I *have*
Building Linux for arm64 is now supported in macOS. You can find all patch
series discussions here [1]. In case you want to give this a try, here the
steps:
```shell
diskutil apfs addVolume /dev/disk<N> "Case-sensitive APFS" linux
```
```shell
brew install coreutils findutils gnu-sed gnu-tar grep llvm make pkg-config
```
```shell
brew tap bee-headers/bee-headers
brew install bee-headers/bee-headers/bee-headers
```
Initialize the environment with `bee-init`. Repeat with every new shell:
```shell
source bee-init
```
```shell
make LLVM=1 defconfig
make LLVM=1 -j$(nproc)
```
More details about the setup required can be found here [2].
This allows to build the kernel and boot it with QEMU -kernel argument. And
debug it with with lldb.
[1]
v3: https://lore.kernel.org/all/20240925-macos-build-support-v3-1-233dda880e60@samsung.com/
v2: https://lore.kernel.org/all/20240906-macos-build-support-v2-0-06beff418848@samsung.com/
v1: https://lore.kernel.org/all/20240807-macos-build-support-v1-0-4cd1ded85694@samsung.com/
[2] https://github.com/bee-headers/homebrew-bee-headers/blob/main/README.md
Daniel
> done kernel development using a Macbook Air M2 while on a cruise ship
> with limited internet access, building the kernel using a Parallels VM
> running Debian testing, and then using qemu from MacPorts to avoid the
> double virtualization performance penalty to run xfstests to test the
> freshly-built arm64 kernel, using my xfstests runner -- and all of
> this is available on github for anyone to use.
next prev parent reply other threads:[~2024-10-10 8:51 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-05 18:35 [GIT PULL] bcachefs fixes for 6.12-rc2 Kent Overstreet
2024-10-05 22:34 ` Linus Torvalds
2024-10-05 22:54 ` Kent Overstreet
2024-10-05 23:15 ` Linus Torvalds
2024-10-05 23:40 ` Kent Overstreet
2024-10-05 23:47 ` Kent Overstreet
2024-10-06 0:14 ` Linus Torvalds
2024-10-06 0:54 ` Kent Overstreet
2024-10-06 4:30 ` Theodore Ts'o
2024-10-06 4:33 ` Kent Overstreet
2024-10-06 19:04 ` Linus Torvalds
2024-10-06 19:29 ` Kent Overstreet
2024-10-06 21:31 ` Alan Huang
2024-10-07 15:01 ` Jason A. Donenfeld
2024-10-07 19:59 ` Kent Overstreet
2024-10-07 21:21 ` Jason A. Donenfeld
2024-10-07 23:33 ` Jann Horn
2024-10-09 3:51 ` Theodore Ts'o
2024-10-09 4:17 ` Kent Overstreet
2024-10-09 17:54 ` Theodore Ts'o
2024-10-10 8:51 ` Daniel Gomez [this message]
2024-10-06 11:49 ` Martin Steigerwald
2024-10-06 17:18 ` Kent Overstreet
2024-10-07 15:13 ` Martin Steigerwald
2024-10-06 1:20 ` Carl E. Thompson
2024-10-06 1:56 ` Kent Overstreet
2024-10-06 3:06 ` Carl E. Thompson
2024-10-06 3:42 ` Kent Overstreet
2024-10-07 14:58 ` Josef Bacik
2024-10-07 20:21 ` Kent Overstreet
2024-10-05 22:36 ` pr-tracker-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=D4RZXQ8GR1C4.35P1KFUAWX09N@samsung.com \
--to=da.gomez@samsung.com \
--cc=kent.overstreet@linux.dev \
--cc=linux-bcachefs@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox