diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 48106b3fa5..a58b2aabcb 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,6 +1,6 @@ # THIS FILE WAS AUTOMATICALLY GENERATED, PLEASE DO NOT EDIT. # -# Generated on 2024-08-14T14:49:10Z by kres 7be2a05. +# Generated on 2024-08-25T05:01:25Z by kres 8e4bbb4. name: default concurrency: @@ -2992,6 +2992,7 @@ jobs: if: github.event_name == 'schedule' env: IMAGE_REGISTRY: registry.dev.siderolabs.io + IMAGER_ARGS: --extra-kernel-arg=console=ttyS0 PLATFORM: linux/amd64 run: | make images-essential @@ -2999,6 +3000,7 @@ jobs: if: github.event_name == 'schedule' env: IMAGE_REGISTRY: registry.dev.siderolabs.io + IMAGER_ARGS: --extra-kernel-arg=console=ttyS0 PLATFORM: linux/amd64 run: | make secureboot-iso diff --git a/.github/workflows/integration-trusted-boot-cron.yaml b/.github/workflows/integration-trusted-boot-cron.yaml index 03532f1055..ea0b878ee1 100644 --- a/.github/workflows/integration-trusted-boot-cron.yaml +++ b/.github/workflows/integration-trusted-boot-cron.yaml @@ -1,6 +1,6 @@ # THIS FILE WAS AUTOMATICALLY GENERATED, PLEASE DO NOT EDIT. # -# Generated on 2024-05-27T16:20:10Z by kres bcb280a. +# Generated on 2024-08-25T05:01:25Z by kres 8e4bbb4. name: integration-trusted-boot-cron concurrency: @@ -84,6 +84,7 @@ jobs: if: github.event_name == 'schedule' env: IMAGE_REGISTRY: registry.dev.siderolabs.io + IMAGER_ARGS: --extra-kernel-arg=console=ttyS0 PLATFORM: linux/amd64 run: | make images-essential @@ -91,6 +92,7 @@ jobs: if: github.event_name == 'schedule' env: IMAGE_REGISTRY: registry.dev.siderolabs.io + IMAGER_ARGS: --extra-kernel-arg=console=ttyS0 PLATFORM: linux/amd64 run: | make secureboot-iso diff --git a/.kres.yaml b/.kres.yaml index 5c7d89a2a9..0a0b2f034a 100644 --- a/.kres.yaml +++ b/.kres.yaml @@ -424,12 +424,14 @@ spec: - only-on-schedule environment: PLATFORM: linux/amd64 + IMAGER_ARGS: "--extra-kernel-arg=console=ttyS0" IMAGE_REGISTRY: registry.dev.siderolabs.io - name: secureboot-iso conditions: - only-on-schedule environment: PLATFORM: linux/amd64 + IMAGER_ARGS: "--extra-kernel-arg=console=ttyS0" IMAGE_REGISTRY: registry.dev.siderolabs.io - name: integration-trusted-boot command: e2e-qemu diff --git a/hack/release.toml b/hack/release.toml index 8498fd4054..6a41fb6eac 100644 --- a/hack/release.toml +++ b/hack/release.toml @@ -192,6 +192,14 @@ The Talos bundled Flannel manifest was simplified to remove the `install-cni` st title = "Device Extra Settle Timeout" description = """\ Talos Linux now supports a kernel command line argument `talos.device.settle_time=3m` to set the device extra settle timeout to workaround issues with broken drivers. +""" + + [notes.metal-image] + title = "Metal images" + description = """\ +Starting with Talos 1.8, `console=ttyS0` kernel argument is removed from the metal images and installer. If running virtualized in QEMU (For eg: Proxmox), this can be added as an extra kernel argument if needed via Image Factory or using Imager. + +This should fix slow boot or no console output issues on most bare metal hardware. """ [make_deps] diff --git a/internal/app/machined/pkg/runtime/v1alpha1/platform/metal/metal.go b/internal/app/machined/pkg/runtime/v1alpha1/platform/metal/metal.go index 6ed75980a3..be7246d7a6 100644 --- a/internal/app/machined/pkg/runtime/v1alpha1/platform/metal/metal.go +++ b/internal/app/machined/pkg/runtime/v1alpha1/platform/metal/metal.go @@ -162,7 +162,7 @@ func (m *Metal) KernelArgs(arch string) procfs.Parameters { switch arch { case "amd64": return []*procfs.Parameter{ - procfs.NewParameter("console").Append("ttyS0").Append("tty0"), + procfs.NewParameter("console").Append("tty0"), } case "arm64": return []*procfs.Parameter{ diff --git a/website/content/v1.8/talos-guides/configuration/logging.md b/website/content/v1.8/talos-guides/configuration/logging.md index ac926c03ff..fd169ef469 100644 --- a/website/content/v1.8/talos-guides/configuration/logging.md +++ b/website/content/v1.8/talos-guides/configuration/logging.md @@ -12,7 +12,7 @@ Kernel messages can be retrieved with `talosctl dmesg` command: ```sh $ talosctl -n 172.20.1.2 dmesg -172.20.1.2: kern: info: [2021-11-10T10:09:37.662764956Z]: Command line: init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 console=ttyS0 reboot=k panic=1 talos.shutdown=halt talos.platform=metal talos.config=http://172.20.1.1:40101/config.yaml +172.20.1.2: kern: info: [2021-11-10T10:09:37.662764956Z]: Command line: init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 reboot=k panic=1 talos.shutdown=halt talos.platform=metal talos.config=http://172.20.1.1:40101/config.yaml [...] ``` diff --git a/website/content/v1.8/talos-guides/install/bare-metal-platforms/matchbox.md b/website/content/v1.8/talos-guides/install/bare-metal-platforms/matchbox.md index 95bbd76d0f..002a59428a 100644 --- a/website/content/v1.8/talos-guides/install/bare-metal-platforms/matchbox.md +++ b/website/content/v1.8/talos-guides/install/bare-metal-platforms/matchbox.md @@ -1,7 +1,7 @@ --- title: "Matchbox" description: "In this guide we will create an HA Kubernetes cluster with 3 worker nodes using an existing load balancer and matchbox deployment." -aliases: +aliases: - ../../../bare-metal-platforms/matchbox --- @@ -67,7 +67,6 @@ Download these files from the [release](https://github.com/siderolabs/talos/rele "slab_nomerge", "pti=on", "console=tty0", - "console=ttyS0", "printk.devkmsg=on", "talos.platform=metal", "talos.config=http://matchbox.talos.dev/assets/controlplane.yaml" @@ -93,7 +92,6 @@ Download these files from the [release](https://github.com/siderolabs/talos/rele "slab_nomerge", "pti=on", "console=tty0", - "console=ttyS0", "printk.devkmsg=on", "talos.platform=metal", "talos.config=http://matchbox.talos.dev/assets/worker.yaml" diff --git a/website/content/v1.8/talos-guides/install/bare-metal-platforms/secureboot.md b/website/content/v1.8/talos-guides/install/bare-metal-platforms/secureboot.md index 24734f3e04..09559f490f 100644 --- a/website/content/v1.8/talos-guides/install/bare-metal-platforms/secureboot.md +++ b/website/content/v1.8/talos-guides/install/bare-metal-platforms/secureboot.md @@ -198,7 +198,7 @@ output: kind: iso outFormat: raw skipped initramfs rebuild (no system extensions) -kernel command line: talos.platform=metal console=ttyS0 console=tty0 init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 lockdown=confidentiality +kernel command line: talos.platform=metal console=tty0 init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 lockdown=confidentiality UKI ready ISO ready output asset path: /out/metal-amd64-secureboot.iso @@ -236,7 +236,7 @@ output: kind: installer outFormat: raw skipped initramfs rebuild (no system extensions) -kernel command line: talos.platform=metal console=ttyS0 console=tty0 init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 lockdown=confidentiality +kernel command line: talos.platform=metal console=tty0 init_on_alloc=1 slab_nomerge pti=on consoleblank=0 nvme_core.io_timeout=4294967295 printk.devkmsg=on ima_template=ima-ng ima_appraise=fix ima_hash=sha512 lockdown=confidentiality UKI ready installer container image ready output asset path: /out/installer-amd64-secureboot.tar