New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kernel/x86: merge "generic" into "legacy" #14944
Conversation
There is a desire to reduce the time spent on x86 OpenWRT platforms. "generic" is most suitable for removal. The few systems which could use "generic" must now opt for "legacy" (or for a lucky few "64"). Closes: openwrt#14231 Signed-off-by: Elliott Mitchell <ehem+openwrt@m5p.com>
@@ -3,7 +3,7 @@ define Device/generic | |||
DEVICE_MODEL := x86/legacy | |||
DEVICE_PACKAGES += kmod-3c59x kmod-8139too kmod-e100 kmod-e1000 \ | |||
kmod-natsemi kmod-ne2k-pci kmod-pcnet32 kmod-r8169 kmod-sis900 \ | |||
kmod-tg3 kmod-via-rhine kmod-via-velocity kmod-forcedeth | |||
kmod-tg3 kmod-via-rhine kmod-via-velocity kmod-forcedeth kmod-fs-vfat |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems odd kmod-fs-vfat
is presently absent from legacy anyway. This simply comes from generic
.
CONFIG_EFI=y | ||
CONFIG_EFIVAR_FS=m | ||
# CONFIG_EFI_BOOTLOADER_CONTROL is not set | ||
# CONFIG_EFI_CAPSULE_LOADER is not set | ||
# CONFIG_EFI_CAPSULE_QUIRK_QUARK_CSH is not set | ||
# CONFIG_EFI_COCO_SECRET is not set | ||
# CONFIG_EFI_CUSTOM_SSDT_OVERLAYS is not set | ||
# CONFIG_EFI_DISABLE_PCI_DMA is not set | ||
# CONFIG_EFI_DISABLE_RUNTIME is not set | ||
CONFIG_EFI_DXE_MEM_ATTRIBUTES=y | ||
CONFIG_EFI_EARLYCON=y | ||
CONFIG_EFI_ESRT=y | ||
# CONFIG_EFI_FAKE_MEMMAP is not set | ||
CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER=y | ||
# CONFIG_EFI_PGT_DUMP is not set | ||
# CONFIG_EFI_RCI2_TABLE is not set | ||
CONFIG_EFI_RUNTIME_MAP=y | ||
CONFIG_EFI_RUNTIME_WRAPPERS=y | ||
CONFIG_EFI_STUB=y | ||
# CONFIG_EFI_TEST is not set | ||
# CONFIG_EFI_VARS is not set |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe 32-bit EFI implementations did exist. I'm a bit doubtful about including support in legacy
, but generic
did have it enabled.
CONFIG_HYPERV=y | ||
CONFIG_HYPERVISOR_GUEST=y | ||
CONFIG_HYPERV_BALLOON=y | ||
CONFIG_HYPERV_KEYBOARD=y | ||
CONFIG_HYPERV_NET=y | ||
CONFIG_HYPERV_STORAGE=y | ||
# CONFIG_HYPERV_TESTING is not set | ||
CONFIG_HYPERV_TIMER=y | ||
CONFIG_HYPERV_UTILS=y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was present in generic
. I suspect 32-bit kernels are rarely used in Hyper-V VMs, yet it had been enabled.
CONFIG_PINCTRL=y | ||
CONFIG_PINCTRL_ALDERLAKE=y | ||
CONFIG_PINCTRL_BAYTRAIL=y | ||
CONFIG_PINCTRL_BROXTON=y | ||
CONFIG_PINCTRL_CANNONLAKE=y | ||
CONFIG_PINCTRL_CHERRYVIEW=y | ||
CONFIG_PINCTRL_DENVERTON=y | ||
CONFIG_PINCTRL_ELKHARTLAKE=y | ||
CONFIG_PINCTRL_EMMITSBURG=y | ||
CONFIG_PINCTRL_GEMINILAKE=y | ||
CONFIG_PINCTRL_INTEL=y | ||
CONFIG_PINCTRL_JASPERLAKE=y | ||
CONFIG_PINCTRL_LAKEFIELD=y | ||
CONFIG_PINCTRL_LEWISBURG=y | ||
CONFIG_PINCTRL_LYNXPOINT=y | ||
CONFIG_PINCTRL_METEORLAKE=y | ||
CONFIG_PINCTRL_SUNRISEPOINT=y | ||
CONFIG_PINCTRL_TIGERLAKE=y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This would be rather rare in a legacy system, but again copying from generic
.
# CONFIG_SERIAL_MULTI_INSTANTIATE is not set | ||
CONFIG_SMP=y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SMP is uncommon on legacy
systems, but anything P6 or later could do it.
CONFIG_KVM=y | ||
CONFIG_KVM_AMD=y | ||
CONFIG_KVM_ASYNC_PF=y | ||
CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y | ||
CONFIG_KVM_GUEST=y | ||
CONFIG_KVM_INTEL=y | ||
CONFIG_KVM_MMIO=y | ||
CONFIG_KVM_VFIO=y | ||
# CONFIG_KVM_XEN is not set | ||
CONFIG_KVM_XFER_TO_GUEST_WORK=y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm unsure kernel-VM was back-ported to function on legacy
-class hardware. Yet this had been enabled in generic
.
CONFIG_XEN=y | ||
CONFIG_XENFS=y | ||
CONFIG_XEN_ACPI=y | ||
CONFIG_XEN_AUTO_XLATE=y | ||
# CONFIG_XEN_BACKEND is not set | ||
CONFIG_XEN_BALLOON=y | ||
CONFIG_XEN_BLKDEV_FRONTEND=y | ||
CONFIG_XEN_COMPAT_XENFS=y | ||
CONFIG_XEN_DEBUG_FS=y | ||
CONFIG_XEN_DEV_EVTCHN=y | ||
CONFIG_XEN_FBDEV_FRONTEND=y | ||
CONFIG_XEN_GNTDEV=y | ||
CONFIG_XEN_GRANT_DEV_ALLOC=y | ||
CONFIG_XEN_NETDEV_FRONTEND=y | ||
CONFIG_XEN_PRIVCMD=y | ||
CONFIG_XEN_PVH=y | ||
CONFIG_XEN_PVHVM=y | ||
CONFIG_XEN_PVHVM_GUEST=y | ||
CONFIG_XEN_PVHVM_SMP=y | ||
CONFIG_XEN_SAVE_RESTORE=y | ||
CONFIG_XEN_SCSI_FRONTEND=y | ||
CONFIG_XEN_SYS_HYPERVISOR=y | ||
CONFIG_XEN_VIRTIO=y | ||
# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set | ||
CONFIG_XEN_WDT=y | ||
CONFIG_XEN_XENBUS_FRONTEND=y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Of all the hypervisors, Xen was originally written to function on legacy
-class hardware. The support may die off soon if it hasn't already been killed, but it did work.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The configuration options from generic
were copied to legacy
. Quite a few of these seem rather implausible for a generic
or legacy
-class system, but they had been enabled.
This would need advice as to which of these to kill.
Also please prepare patches for kernel 6.6 so that the PR is ready for commit #14868 |
There wouldn't be much difference. Simply duplicates everything for 6.6. If this got approved quickly it might go in before #14868. |
The order of approval is still a mystery to me ;) |
Just as long as the order of operations isn't. What is really needed is opinions on which options should really be copied from |
I guess we could almost simply dump Any comments on whether any of these should be dumped instead of propagated to |
There is a desire to reduce the time spent on x86 OpenWRT platforms. "generic" is most suitable for removal. The few systems which could use "generic" must now opt for "legacy" (or for a lucky few "64").
Closes: #14231