Private tier: pin cda5b9a49f also verifies at illumos 7e802e88a3 #7
Loading…
Reference in a new issue
No description provided.
Delete branch "g1-gate-pin"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Anima work item: G1
01a0f419-b3aa-71f2-8662-d6a471e52225Stacked on #6 (
r4-virtio).The Hephaistos test guest was refreshed to current OpenIndiana Hipster:
golden-20260930.qcow2, osnet-incorporation0.5.11-2026.0.0.23295, kernelillumos-7e802e88a3. This PR records that the private-tier pincda5b9a49falso verifies against that kernel, so no second pin feature (unstable-gate-7e802e88a3) is needed. It also documents the one behaviour change a virtio driver can see.kernel-check at illumos 7e802e88a3
cargo xtask kernel-check --emit | guest mdb -k | cargo xtask kernel-check --verify -ran on the guest, withmisc/virtioloaded by vioblk andmisc/gldmodloaded for the check:ddi_ncpus_expectedis now in the kernel)drv/ktestis not packaged for OpenIndiana)Nothing disagreed. Every count below the total is a type that CTF cannot name, as in the earlier runs. The 16 errors are the ktest symbols.
Log:
logs/hephaistos/illumos-drm/20260930-g1-kernel-check.log(illumos workspace).Gate diff cda5b9a49f..7e802e88a3 of the cited files
xtask lint-man --gateagainst a7e802e88a3checkout reports 0 errors for its citations.virtio.hgainedvirtio_queue_share_interrupt,virtio_queue_pending,virtio_queue_intr_handleandvirtio_interrupts_type. They are not bound.virtio_spec.hgainedVIRTIO_F_RING_EVENT_IDX.7e802e88a3. They stay checked againstcda5b9a49f: 0 errors there. This is as DESIGN.md §4 already says.433e6bede6the framework negotiatesVIRTIO_F_RING_EVENT_IDXwhen the device offers it. virtio-gpu now runs with features0x130000003(atcda5b9a49f:0x110000003). The device then interrupts for a queue again only after a poll has found the queue empty. The wrapper already hands every signalled queue to a task that polls untilNone. However, its module doc claimed that "the next interrupt" picks up a queue whose task-queue dispatch failed, and that is no longer guaranteed; the second commit corrects it (VirtioDev::processdoes). No panic is involved, so the panic-to-type rule does not apply.Guest regression on the new kernel (illumos-drm
r4-virtio-gpu55d8e60)The modules were built with
cargo xtask buildand are byte-identical to r4-run6's (rdrmnull.adb95a2fe…,virtio_gpu.a3f6d912c…). They ran on a fresh overlay withvirtio-gpu-gl-pci+egl-headlessand the default transitional virtio disk.run-r4-test.sh: PASS, 74 checks,drm_r4_test63/0. Detach: 19504 requests, 0 failed, 0 timeouts, 0 resources left. Gate bug 18358 is fixed at this kernel: virtio_gpu attaches on its modern interface next to the default disk, sodisable-modern=onis no longer needed.run-r3-test.sh: fail=0.run-r1-test.sh(R0, R1, R2):drm_r2_test188/0, and every other test passed, but the script reported fail=1 twice: "no detach(9E) refusal was logged". The refusal was logged with the same timestamp. It reached/var/adm/messagesafter the script's immediategrep, while the NOTICE emitted just before it had already arrived. With a 2 s pause before that grep (a guest-local copy of the script) the run gives fail=0. The two-device run (rdrmnull-two.conf) passed unmodified (198/0, fail=0). The syslog path has no gate change between the two commits outside panic context. This is a timing race in the test script, not a kernel difference.Logs, all in
logs/hephaistos/illumos-drm/:20260930-g1-r4-driver.log,20260930-g1-regression-r1{,-rerun,-sleep2}.log,20260930-g1-regression-r3.log,20260930-g1-regression-r2-two.log.Local checks
cargo fmt --check: passes.cargo clippy -D warnings: passes for the workspace and for the private features.cargo doc -D warnings: passes for both.cargo test -p ddi(lib: 13 passed; doc on the illumos target: 27 passed, 7 ignored).lint-man --gate cda5b9a49f: 0 private errors. The one public error,ddi_ncpus_expected(9F), has no page at that commit, the same as onr4-virtio.