<roxell>
conchuod: if you do, don't forget that tuxrun has a dependency on podman or docker, but it should be stated in the reproducer script.
<conchuod>
roxell: yah, dw I've used it before :) Think I even sent some patches for tuxmake
<conchuod>
Or at least, tested some PRs
sakman_ has joined #riscv
sakman has quit [Ping timeout: 260 seconds]
sakman_ has quit [Ping timeout: 252 seconds]
<roxell>
conchuod: aha, great =)
ntwk has joined #riscv
<conchuod>
roxell: I get the same panic on v6.8 itself
<palmer>
I don't think I'm getting any panics, if I do it's escaped some script and spot checking rv32gc/defconfig/glibc/qemu-virt looks clean
<conchuod>
palmer: what rootfs do you use? Panic is in ext4 code.
<palmer>
ah, that's it. I just have an initramfs
<palmer>
we've had a few FS-related bugs slip through, I guess we should test something real...
<conchuod>
I'll go bisect this, but unlikely I can fix it.
<conchuod>
v6.9-rc2 looks good, maybe its a backport that is missing.
<palmer>
cool. Alex had also run into some plan9 FS bugs, not sure if they're the same
<conchuod>
palmer: damn, you picked up that rust stuff?
<palmer>
Did you not want it? It looked fine to me
<palmer>
I guess I don't really have any tests for it, but I figured flipping it on was safe
<conchuod>
palmer: I mean, if it looked good, sure. The tc options was what I was mainly not sure about and if you're happy with 'em you know a lot more than I do there.
<palmer>
ya, I looked and figured if that's what it takes to make rust build then whatever
<bjoto>
Worked out of the box for me!
<palmer>
cool
<bjoto>
(Rust i.e. -- not rv32)
<conchuod>
palmer: My take on it is kinda that is like the mixed llvm/gnu builds, and we're bound to find some corner cases.
<palmer>
ya, I'm sure we'll find a bunch of weirdness. I think mixing the -elf an -linux-gnu tools is safe for kernel stuff, but I don't know Rust that well so maybe something will blow up
<bjoto>
conchuod: Did you dig anything into the __udivdi3?
<conchuod>
If you wanna test it on riscv, its a lot easier than on x86. x86 defconfig I had to disable a bunch of stuff to actually even use it. Although I think one of those things was BTF so Bjorn prob had to disable bpf.
<palmer>
is there some rust test module I can try or something?
<bjoto>
Yup. pahole doesn't have proper support yet.
<conchuod>
There's some samples that just print "hello word" effectively.
<palmer>
cool
<conchuod>
SAMPLES_RUST and some configs under that.
<palmer>
I think the udiv thing is just a feature? I posted a patch to add it a while ago and Linus said "no 64-bit div in the kernel", so we don't have it
<bjoto>
That's what I ran on VF2...
<palmer>
did other people add it as part of Rust-ification?
<conchuod>
palmer: no. That's the issue I - rustc generates __udivdi3 for rv32 but the kernel does not implement it so it doesn't build.
<palmer>
OK, so i think either Linus needs to change his mind or Rust needs to change their codegen
<palmer>
I can't find the patch I sent, but IIRC it's just been a long-standing kernel policy. IIRC it was for some of the delay code
<bjoto>
roxell: conchuod: FWIW defconfig rv32 6.8.0 boots for me with ext4 rootfs: https://paste.debian.net/1313683 ...but it's probably tripping over something else.
<conchuod>
bjoto run tuxrun --runtime podman --device qemu-riscv32 --kernel /<path to your image> --parameters SKIPFILE=skipfile-lkft.yaml --parameters SHARD_NUMBER=4 --parameters SHARD_INDEX=2 --image docker.io/linaro/tuxrun-dispatcher:v0.66.1 --tests ltp-commands
<bjoto>
*chefs kiss*
<bjoto>
Nice!
<conchuod>
palmer: ye, I think the core code would have to start using the math64.h stuff, which I think is unlikely...
<Stat_headcrabed>
conchuod: Well you cannot drop rv32 :3
<conchuod>
Stat_headcrabed: It was a joke :) I wouldn't be bisecting this if I thought we could!
<bjoto>
...all 2 users will be upset! XD
<Stat_headcrabed>
Allwinner has a chip using andes a27l2, which is the first(?) rv32 chip with mmu we will see
<Stat_headcrabed>
BrB
<Stat_headcrabed>
That chip not released yet
<Stat_headcrabed>
😉
<conchuod>
palmer: Also, all the archs that've turned on rust so far are all 64-bit, and I don't wanna put my hand up for looking after the only 32-bit one.
<palmer>
WFM
<palmer>
just another argument for deprecating rv32 ;)
vagrantc has joined #riscv
JanC has joined #riscv
<conchuod>
I got bad rng on my bisection (I was doing it inverted with booting being "bad") and got a dead end.
Stat_headcrabed has quit [Quit: Stat_headcrabed]
A1ice has joined #riscv
Stat_headcrabed has joined #riscv
Stat_headcrabed has quit [Client Quit]
JanC has quit [Ping timeout: 240 seconds]
A1ice has quit [Remote host closed the connection]
A1ice has joined #riscv
Stat_headcrabed has joined #riscv
Stat_headcrabed has quit [Client Quit]
bjdooks has quit [Read error: Connection reset by peer]
bjdooks has joined #riscv
<conchuod>
Hit another merge commit :s
<conchuod>
bjoto: roxell: I bisected it to 8c9440fea774 ("Merge tag 'vfs-6.8.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs")
<conchuod>
Which is a merge of 3f6984e7301f & 5bd3cf8cbc8a, both of which passed...
bjdooks has quit [Read error: Connection reset by peer]
bjdooks has joined #riscv
<A1ice>
Do you need any non-free BLOB to boot TH1520? I am not sure of this
handsome_feng has quit [Quit: Connection closed for inactivity]
sakman has joined #riscv
<bjoto>
conchuod: Hmm, I tried pulling the Image that crashes, and boot with my rootfs. Works. Is it possible to pull out the tuxrun rootfs somehow?
<bjoto>
roxell: ^^^ is probably a q for you! :)
<conchuod>
I built rv32_defconfig and ran with the command from above and it repos.
<conchuod>
repros*
JanC has joined #riscv
<bjoto>
I run the exact same qemu commandline, same kernel, same config, no repro.
<bjoto>
Hmm...
mlw has quit [Ping timeout: 260 seconds]
JanC_ has joined #riscv
JanC is now known as Guest1714
JanC_ is now known as JanC
Guest1714 has quit [Ping timeout: 260 seconds]
davidlt has quit [Ping timeout: 240 seconds]
<bjoto>
conchuod: Ah, yes, same for me when I run my built kernel in tuxrun, but *outside* tuxrun it does not.
<bjoto>
(that's why I want to try with the same rootfs, to rule out qemu)
octavius has joined #riscv
JanC_ has joined #riscv
JanC is now known as Guest7690
Guest7690 has quit [Killed (iridium.libera.chat (Nickname regained by services))]
JanC_ is now known as JanC
JanC has quit [Client Quit]
JanC has joined #riscv
JanC has quit [Ping timeout: 256 seconds]
JanC has joined #riscv
JanC_ has joined #riscv
JanC is now known as Guest8330
Guest8330 has quit [Killed (lead.libera.chat (Nickname regained by services))]
JanC_ is now known as JanC
JanC has quit [Ping timeout: 255 seconds]
JanC_ has joined #riscv
JanC_ is now known as JanC
A1ice has quit [Ping timeout: 260 seconds]
JanC has quit [Ping timeout: 255 seconds]
sakman has quit [Remote host closed the connection]
ntwk has quit [Read error: Connection reset by peer]
KREYREN has quit [Remote host closed the connection]
KREYREN has joined #riscv
octavius has quit [Ping timeout: 260 seconds]
psydroid has quit [Read error: Connection reset by peer]
<sorear>
looking at a gaisler slide deck which is talking about using a risc-v architectural iommu ... in a sparc64 SoC. wonder how much chaos that will cause
prabhakar has quit [Ping timeout: 240 seconds]
<conchuod>
sorear: what about doing things the other way, like having a gic or smmu on riscv :)
<sorear>
I'm not going to offer detailed commentary due to a lack of a good understanding of the gic and smmu specs
<conchuod>
sorear: Oh not looking for detail, just similarly wondering how much chaos that'd cause.
Starfoxxes has quit [Ping timeout: 255 seconds]
KREYREN has quit [Remote host closed the connection]
KREYREN has joined #riscv
Starfoxxes has joined #riscv
pentanol has joined #riscv
hightower3 has quit [Quit: Leaving]
JanC has joined #riscv
KREYREN has quit [Remote host closed the connection]