gokrazy, tstest, cmd/vnet: switch amd64 kernel to gokrazy/kernel.amd64

The tailscale/gokrazy-kernel module was a fork of rtr7/kernel that
stalled at Linux 6.8.9 (July 2024). All of the kernel config options we
had added in that fork (ENA, Xen for EC2, virtio-mmio for qemu microvm,
virtio RNG, IPv6 policy routing, netlink diag, etc) are now present in
the gokrazy project's own gokrazy/kernel.amd64 module, which tracks
current kernel.org releases (Linux 7.1.3 as of this change) and is the
gokrazy project's supported kernel for x86_64 PCs and VMs.

Switch the tsapp and natlabapp images, the natlab VM tests, and the
CI workflow to gokrazy/kernel.amd64, drop the tailscale/gokrazy-kernel
dependency, and update gokrazy/kernel.arm64 to latest while here.

Verified with TestEasyEasy, TestJustIPv6, and TestTailscaleSSH in
tstest/natlab/vmtest with --run-vm-tests.

Updates #1866

Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
Change-Id: I90c3765a4e18f5609b4d77b51ac38d17c8e3688a
This commit is contained in:
Brad Fitzpatrick
2026-07-15 11:45:02 -04:00
committed by Brad Fitzpatrick
parent 4660a961eb
commit 0fb8226708
14 changed files with 27 additions and 27 deletions
+1 -1
View File
@@ -106,7 +106,7 @@ func findKernelPath(goMod string) (string, error) {
return "", err
}
for _, r := range mf.Require {
if r.Mod.Path == "github.com/tailscale/gokrazy-kernel" {
if r.Mod.Path == "github.com/gokrazy/kernel.amd64" {
return strings.TrimSpace(string(goModB)) + "/" + r.Mod.String() + "/vmlinuz", nil
}
}
+3 -3
View File
@@ -2071,17 +2071,17 @@ func findKernelPath(goMod string) (string, error) {
}
goModCache := strings.TrimSpace(string(goModCacheB))
// Parse go.mod to find gokrazy-kernel version.
// Parse go.mod to find kernel version.
for line := range strings.SplitSeq(string(b), "\n") {
line = strings.TrimSpace(line)
if strings.HasPrefix(line, "github.com/tailscale/gokrazy-kernel") {
if strings.HasPrefix(line, "github.com/gokrazy/kernel.amd64") {
parts := strings.Fields(line)
if len(parts) >= 2 {
return filepath.Join(goModCache, parts[0]+"@"+parts[1], "vmlinuz"), nil
}
}
}
return "", fmt.Errorf("gokrazy-kernel not found in %s", goMod)
return "", fmt.Errorf("kernel.amd64 not found in %s", goMod)
}
// PingRoute describes what connection type was used to transfer a Disco ping.