rehosting / linux_builder

0 stars 1 forks source link

feat(linter): explain why options are unnecessary #30

Open AndrewFasano opened 1 month ago

AndrewFasano commented 1 month ago

This is a bit of a work in progress, initially started when I was working on #24 but now I think it's more of its own thing. The main thing here is trying to change the linter to say why options are bad, they can either be:

Using this updated script I've been trying to improve the configs we have. This is still a work in progress, but I figured I'd open a draft PR for visibility. Here's the --config-only output (from a file) for x86_64 right now:

INVALID OPTION: CONFIG_NETFILTER_TPROXY
INVALID OPTION: CONFIG_NETFILTER_XT_TARGET_TRACE_MODULE
INVALID OPTION: CONFIG_NET_ACT_MPLS
INVALID OPTION: CONFIG_NET_IPV6
INVALID OPTION: CONFIG_NET_MLPS_GSO
INVALID OPTION: CONFIG_PROC_DEVICETREE
MISSING DEPENDENCY: CONFIG_NETFILTER_ADVANCED
MISSING DEPENDENCY: CONFIG_NETFILTER_NETLINK_ACCT
MISSING DEPENDENCY: CONFIG_NETFILTER_NETLINK_QUEUE
MISSING DEPENDENCY: CONFIG_NETFILTER_SYNPROXY
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_CONNMARK
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_MATCH_ECN
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_MATCH_HL
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_MATCH_IPVS
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_MATCH_SOCKET
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_TARGET_CT
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_TARGET_HL
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_TARGET_LED
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_TARGET_NETMAP
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_TARGET_RATEEST
MISSING DEPENDENCY: CONFIG_NETFILTER_XT_TARGET_REDIRECT
ON BY DEFAULT for x86_64: CONFIG_NETFILTER_INGRESS
ON BY DEFAULT for x86_64: CONFIG_NETFILTER_NETLINK
ON BY DEFAULT for x86_64: CONFIG_NETFILTER_NETLINK_LOG
ON BY DEFAULT for x86_64: CONFIG_NETFILTER_XTABLES
ON BY DEFAULT for x86_64: CONFIG_NETFILTER_XT_MARK
ON BY DEFAULT for x86_64: CONFIG_NETFILTER_XT_NAT
ON BY DEFAULT for x86_64: CONFIG_NETFILTER_XT_TARGET_CONNSECMARK
ON BY DEFAULT for x86_64: CONFIG_NET_NS
ON BY DEFAULT for x86_64: CONFIG_NF_CONNTRACK_PROCFS
ON BY DEFAULT for x86_64: CONFIG_NF_DEFRAG_IPV6
ON BY DEFAULT for x86_64: CONFIG_PID_NS
ON BY DEFAULT for x86_64: CONFIG_PROC_SYSCTL
ON BY DEFAULT for x86_64: CONFIG_UTS_NS
AndrewFasano commented 1 month ago

Two things I think could be good here for future work: 1) Linter could run across architectures and report better warnings such as "this option is always invalid" or "this option is necessary for [these arches] but not [those arches]" 2) Continue updating config options based on this info