Add a dropin that prevents the service from controlling its own
scheduling. On newer Flatcar releases, service ordering seems to have
changed and multipathd is able to configure realtime scheduling before
systemd tries (and fails) to enable the cpu controller. The dropin is
meant to enforce sane behavior, and matches older Flatcar releases where
cpu controller was enabled before multipathd tries (and fails) to
configure realtime scheduling.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
The arm64 kernel didn't have TPM support for the qemu TPM2 TIS software TPM.
This moves the TPM TIS kernel module enablement to the common config of both
architectures.
Authored-by: Kai Lueke <kailuke@microsoft.com>
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
This reverts the commit that removes the section where Flatcar has the
dm-verity hash for /usr stored.
In the future we might store it in the initrd or at the end of the
bzImage.
Debian tmux seems to set TERM=tmux-256color, not TERM=screen. This
causes issues when ssh-ing into flatcar from tmux. Copy the screen
terminfo files as the tmux ones, they should be mostly compatible.
Tmux terminfo files are removed because of USE=minimal, but I don't see
a way to hook into the ebuild and prevent the removal easily.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
systemd-vconsole-setup needs the dracut i18n module so that
the binary loadkeys is present. The binary loadkeys comes from
the kbd package.
A custom dracut module patch for i18n was created, so that only the
default `us` keymap and font are installed, leading the size
increase to the minimum of around a few KB instead of 3MB.
Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
Fix a missing mkdir of /sysroot/etc/flatcar/sysext from the initrd before
attempting to move sysext files there. Also explicitly omit dracut zfs module
from initrd generation.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
emerge-gitclone was never GPL-2.0, it was BSD-3. We're switching it to
Apache-2.0 with this commit.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
This commit is part of the effort to decrease the initrd size:
Partially-Fixes: https://github.com/flatcar/Flatcar/issues/1381
Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
'norecovery' was deprecated and has been removed in kernel v6.8 so switch to
the new way of doing things.
This pulls in https://github.com/flatcar/update_engine/pull/40.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Gentoo's linux-info.eclass tries to check the kernel version by
including /lib/modules/.../source/Makefile and printing $(VERSION). It
unsets ARCH= before doing this (no clue why) which works with a full
source tree but not with our minimized one. To fix this we need to
archive arch/x86/Makefile also for arm64.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
The zfs-kmod ebuild needs KERNEL_DIR to point to the correct
/lib/modules directory.
The zfs ebuild installs two systemd unit masks to /usr/lib/systemd which
result in "dangling symlink" errors during the image build. These
systemd unit masks are only necessary for old Ubuntu systems that have
sysv-init-systemd compat wrappers.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>