107 Commits
Author SHA1 Message Date
Jens Reidel 7d3b8e05df kconfigcheck: Don't require LTO_CLANG_THIN for CFI
This is only required on kernels prior to 6.1 and not even supported on
some architectures like ARMv7.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7537>
2025-12-15 23:32:12 +00:00
Clayton Craft 1c26be5ffe kconfigcheck: add 'wine' category for community kernels
This category can be used to collect kconfig that improve Wine/Proton
support on devices. NTSYNC is Win NT sync primatives that improve
performance of things running under Wine.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7157>
2025-12-12 16:07:54 +01:00
Pablo Correa Gómez 6e99b38fc8 kconfigcheck.toml: add missing "all" arch to category:rust
This makes the whole thing more consistent, and allows to verify
architectures in pmb

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7527>
2025-12-08 16:04:43 +01:00
Pablo Correa Gómez 7bbac7dea6 kconfigcheck.toml: fix architecture typo
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7523>
2025-12-08 01:01:19 +01:00
Clayton Craft 5cbd09c81c kconfigcheck: rust: disable DEBUG_INFO_BTF
When this config is enabled along with LTO (from the "hardening"
category), the kernel build system disables rust support.

These options are added to a new category, "rust" since it's only
necessary for kernels with rust support enabled.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7466>
2025-12-01 08:27:17 -08:00
Jens Reidel 6a984c485c kconfigcheck: Fix version requirement for hardening configs
Since CONFIG_CFI exists since 6.18rc1, the requirement must be
>=6.18_rc1. This went unnoticed in my testing because my kernel
incorrectly had a version of 6.18.0_rc1, which is greater than 6.18.0,
but the correct version would be 6.18_rc1, which is lower than 6.18.0.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7430>
2025-11-26 20:08:22 +01:00
Jens Reidel b59e6adaf5 kconfigcheck: Add hardening category
For now, this category requires CFI and SCS to be enabled and ensures
that CFI is compatible with Rust. More options can be added in the
future.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7391>
2025-11-26 12:05:05 +00:00
Clayton Craft 287331de80 kconfigcheck: require immutable category for community kernels
This will make testing immutable images easier, because currently I
suspect most kernels aren't enabling things like erofs...

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7395>
2025-11-21 17:14:02 +00:00
Jens Reidel a499fc6a80 kconfigcheck: Resolve some more warnings
CRYPTO_MD5 and ZSMALLOC are enabled as builtin by the default defconfigs
for x86_64, ppc64le and loongarch64, amongst others.

To avoid warnings on mismatches, just make them builtin for all
architectures.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:39 +00:00
Jens Reidel cd62959335 kconfigcheck: EFI is not available on ppc64le
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:39 +00:00
Jens Reidel 8cfaff88c8 kconfigcheck: Fix ConfigFS gadget dependencies
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:36 +00:00
Jens Reidel c0e981b059 kconfigcheck: SPI drivers depend on SPI
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:32 +00:00
Jens Reidel 37abd842fb kconfigcheck: HID sensors depend on IIO
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:29 +00:00
Jens Reidel f4bd887fb6 kconfigcheck: GPIOLIB is required by some HID configs
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:25 +00:00
Jens Reidel 81504cb5e8 kconfigcheck: NETFILTER_ADVANCED is required by some configs
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:22 +00:00
Jens Reidel df583a8cb0 kconfigcheck: KVM is not available on 32-bit ARM
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:18 +00:00
Jens Reidel 4e956c0f15 kconfigcheck: BLK_DEV_DM requires MD
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:15 +00:00
Jens Reidel 619a2af680 kconfigcheck: Enable EFI_ZBOOT for RISC-V
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7392>
2025-11-17 10:13:44 +00:00
Jens Reidel bed66181bb kconfigcheck: Add missing dependencies
I am working on a RISC-V kernel that uses fragments and ran into a
couple of warnings / errors due to missing configs that resulted in some
other kconfigchecks failing. This fixes all of the errors I ran into.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7392>
2025-11-17 10:13:44 +00:00
Aster Boese bcaa488e8c kconfigcheck: remove HID_BPF and its dependencies
HID_BPF conflicts with CLANG_CFI, which we want to enable in the near future.
It also doesn't seem that HID_BPF is particularly useful for postmarketOS as
a whole, so it should be fine to remove.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7370>
2025-11-16 16:29:59 +00:00
Robert Eckelmann 37cdda5adb kconfigcheck: adjust requirements for IP_NF_IPTABLES_LEGACY & IP6_NF_IPTABLES_LEGACY
These legacy options fail the kconfig check of `linux-google-nyan` which
is currently at 6.6.17. This was discovered during the step to update
the kconfig during !7273.

According to
https://cateee.net/lkddb/web-lkddb/IP_NF_IPTABLES_LEGACY.html and
https://cateee.net/lkddb/web-lkddb/IP6_NF_IPTABLES_LEGACY.html were
introduced with Kernel version 6.9

Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7367>
2025-11-14 22:49:04 +00:00
Sebastian Fleer 9cec75d325 kconfigcheck: only check NETFILTER_XTABLES_LEGACY on >=6.17
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7333>
2025-11-12 16:16:25 +01:00
Clayton Craft 8670cf46dd kconfigcheck: enable missing deps for NF and FW compression
Without these, generated config doesn't have FW compression enabled, and
a few other NF/IP -related options.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7323>
2025-11-10 01:46:05 +00:00
Clayton Craft 8d854127cc kconfigcheck: add BTRFS_FS_POSIX_ACL
This is required for running journalctl without root, see:
https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6145#note_470989

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6263>
2025-10-24 05:23:48 +00:00
Clayton Craft 4e3743b99e kconfigcheck: fix typo in nftables version constraint
Fixes 7829e6c

The old pmb config that was migrated to pmaports had "<5.17"

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7136>
2025-10-18 14:16:07 +00:00
Clayton Craft 5e452bf41c kconfigcheck: switch many options to modules
Based on running kconfig check against a few kernel configs in pmaports
(which presumably already work/boot), and fixing the INFO messages when
it complained about an option should be builtin.

This also:

- removes some options that were in the default category that were
redefined/duplicated elsewhere, in order to avoid confusion later.

- moves CONFIG_CBC to the default category (used by FDE and a few other
things)

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7136>
2025-10-18 14:16:07 +00:00
adamthiede e087139b30 kconfigcheck: add SYN_COOKIES
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7002>
2025-10-17 14:59:42 +00:00
Casey Connolly d09c0bd7e8 kconfigcheck: enable USB simple serial console
Support for simple USB serial devices like those exposed by the Suzy-Q
cable.

Signed-off-by: Casey Connolly <kcxt@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7105>
2025-10-01 14:48:48 +00:00
Clayton Craft c5ca2e756a kconfigcheck: add 'immutable' category
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6949>
2025-10-01 14:14:05 +02:00
Clayton Craft fef14737eb kconfigcheck: use tristate values for options
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7080>
2025-09-30 14:00:12 -07:00
Ingo Reitz 833bbb3a93 kconfigcheck: drop HID_PICOLCD_FB
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7043>
2025-09-26 02:25:56 +00:00
Willow Barraco 6f65c4ba66 kconfigcheck: add netmount category to support NFS better
NFS allow the user to mount distant resources locally, and this is
specially great for mobiles devices, with limited disk space. The user
can couple this with FS-Cache, to limit the network impact. Kerberos
bring security to the NFS mounting.

This new category "netmout" make sure the kernels are built to support
this.
2025-07-06 15:05:36 +02:00
Sonya Sireneva 2d409761f3 kconfigcheck: minimum kernel version for UDMABUF
CONFIG_UDMABUF was introduced in Linux 4.20, but it was accidentially
required on Linux 3.10+ by the CI.

Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6666
2025-06-14 21:25:07 +03:00
Clayton Craft 8734489c8b kconfigcheck: add UDMABUF to default kconfig
See:
https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6163#note_467983

Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6167
[ci:skip-build]: already built successfully in CI
2025-06-13 17:05:24 -07:00
Clayton Craft aae0373b2d kconfigcheck: add missing option dependencies
These options are things that other required kconfig depend on, found
when creating a new config from scratch and noticing a few required
kconfig wasn't making it into the final config.

I don't expect this to have any impact on existing kernel packages that
already pass the kconfig check, because they would already need to have
these options enabled.

Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6641
2025-06-11 23:27:04 +02:00
Luca Weiss ac68999ebe kconfigcheck: Require HID_LENOVO only for x86(_64)
Since kernel v6.14-rc3 HID_LENOVO now depends on ACPI which we don't
want to require enabling on various non-ACPI phones.

Move to it x86 & x86_64 since it's anyways apparently only useful for
"Lenovo / Thinkpad devices".

Part-of: https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6387
[ci:skip-build]: already built successfully in CI
2025-04-08 11:59:40 +02:00
Clayton Craft a398d7c069 kconfigcheck: require PSI by default (MR 6246) 2025-03-09 00:08:51 -08:00
Luca Weiss 342faa4245 kconfigcheck: Reshuffle some input options (MR 6087)
Limit some options based on when they are introduced, to avoid e.g. 6.1
kernels failing kconfig check where the option is just not available
yet.
2025-01-29 17:36:00 +01:00
Caleb Connolly e9252bb7db kconfigcheck: require NULL_TTY support (MR 6087)
The null TTY driver provides a proper (dummy) TTY interface when
console=null is set on the kernel cmdline. This fixes certain
applications which don't correctly handle read() immediately returning
with 0 bytes (e.g. busybox syslogd).

Most normal EFI devices don't boot with console=null and as such there
are various foot-guns littered all over Linux userspace and even in our
own initramfs. However some android devices even enforce console=null,
so it's something we have to deal with.

NULL_TTY should reduce the chance of folks running into strange problems
because of this.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2025-01-29 17:36:00 +01:00
Robert Eckelmann c0a69c0767 kconfigcheck.toml: add conditions for certain HID options (MR 6077)
Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>

[ci:skip-build]: already built successfully in CI
2025-01-22 16:44:20 -08:00
Caleb Connolly 818f90c338 kconfigcheck: enable NTFS for UEFI capable arm64/x86 devices (MR 5801)
devices that previously ran windows may still have a windows partition
and want to dual boot.

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
2025-01-21 23:37:33 -08:00
Oliver Smith c52924104e kconfigcheck: add PPP specific section (MR 5992)
CONFIG_LEDS_GROUP_MULTICOLOR just had to be re-enabled to fix a
regression. Add this to kconfigcheck to prevent disabling it by
accident in the future. Adjust the description of the Librem 5
specific section while at it.

[ci:skip-build] [ci:skip-vercheck]: no need to rebuild
2025-01-14 17:38:37 -08:00
Clayton Craft f23fa7efb0 kconfigcheck: input: only check HID_GOODIX_SPI on >=6.12 (MR 5997) 2025-01-08 00:27:49 +03:00
Clayton Craft e2743c573a kconfigcheck: input: drop some kconfig (MR 5997)
This drops some kconfig that was added in !5836, which shouldn't be
required for device kernels to comply with the "input" kconfig check.

HID_HYPERV_MOUSE: requires enabling HyperV guest support in the kernel,
we shouldn't impose this on all device kernels.

HID_KUNIT_TEST: No reason to enable kunit support, we aren't testing the
kernel with device kernels

SURFACE_HID: Requires enabling a bunch of Microsoft Surface platform
drivers/support, doesn't make sense to require for all device kernels.
Kernels that support Surface devices can enable these as needed, since I
don't think any non-surface devices would even have surface HID input hw
in them.
2025-01-08 00:27:44 +03:00
Jonas Dreßler 2306f86373 kconfigcheck: Add all HID config options from Fedora aarch64 kernel (MR 5836)
Looks like a lot of HID drivers are missing from pmOS device-specific
kernels. Let's try to deal with it by enabling all the HID related
drivers that the Fedora aarch64 and x86 kernels enable.

[ci:skip-kconfig-check]: too many kernels fail from the new required
config here, it's unfeasible to update them all right now
2025-01-06 16:39:46 -08:00
Anjandev Momi d48e3c3f8c kconfigcheck.toml: add comment explaining CONFIG_CRYPTO_MD4 (MR 5951)
[ci:skip-build]: already built successfully in CI
2024-12-29 12:16:21 +01:00
Anjandev Momi d506dbcb30 kconfigcheck: enable CRYPTO_MD4 for iwd (MR 5943)
see: #3386

[ci:skip-build]
2024-12-24 13:06:32 +01:00
Clayton Craft bccbfbc90e kconfigcheck: add new category for virtualization support (MR 5843)
For including options to making sure KVM (and others later) is enabled
in the kernel.

[ci:skip-build]: already built successfully in CI
2024-11-28 21:12:21 +01:00
Stephan Gerhold 3acdb58155 kconfigcheck: Fix ZRAM checks (MR 5835)
main/postmarketos-base/rootfs-etc-conf.d-zram-init configures zstd as our
default ZRAM configuration, but the kconfigcheck only checks for LZ4 at the
moment. Because of this some of our kernels don't actually have ZSTD
support enabled and end up using the default compression algorithm.

For Linux >=4.18 we should enable CONFIG_CRYPTO_ZSTD to enable ZSTD support
for ZRAM.

In Linux >=6.12 the configuration was changed to CONFIG_ZRAM_BACKEND_ZSTD.
This requires manual edits while upgrading, otherwise only LZO support will
remain enabled.

Checking for >=3.14.0 additionally does not make any sense, because the
kconfig check should not be enabled for kernels that cannot satisfy our
minimum requirements.

Describe this properly in kconfigcheck.toml to ensure kernels are
configured correctly.

The following kernels are currently missing the correct options:

config-htc-flounder.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-amlogic.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-grate.armv7: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-msm8974.armv7: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sc7280.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sm6115.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-postmarketos-qcom-sm6350.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-purism-librem5.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)

The following kernels are too old to support CONFIG_CRYPTO_ZSTD:

config-samsung-jxelte.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
config-volla-mimameid.aarch64: CONFIG_CRYPTO_ZSTD should be set (category:zram)
2024-11-24 09:31:21 +01:00
Pablo Correa Gómez 9552b4a781 */*: update references to gitlab.postmarketos.org that need no rebuild (MR 5696)
These are in files or parts of files that are not part of the
checksums, or that serve as packaging-information only. Thus, require
no rebuild
2024-10-07 12:57:38 +02:00