Summary: | genkernel-4.2.6-r2 fails if CPU_SUP_INTEL is not set with >=gentoo-sources-5.18.3 | ||
---|---|---|---|
Product: | Gentoo Hosted Projects | Reporter: | Jack <ostroffjh> |
Component: | genkernel | Assignee: | Gentoo Genkernel Maintainers <genkernel> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | bkohler, gentoo, zoltan |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
genkernel.conf
genkernel.log for gentoo-sources-5.18.3 updated genkernel.conf Kernel config for 6.4.2 |
Description
Jack
2022-06-16 18:20:07 UTC
Created attachment 785765 [details]
genkernel.conf
Created attachment 785768 [details]
genkernel.log for gentoo-sources-5.18.3
apologies for not directly assigning to genkerne@gentoo.org per the error message. Still happens with genkernel-4.3.2-r1 and gentoo-sources-6.4.2 I believe the problem is that genkernel defaults to MICROCODE="all" (this is a genkernel.conf option, not kernel config) so it will require CPU_SUP_INTEL. CPU_SUP_INTEL is only able to be *disabled* if you enable CONFIG_EXPERT=y in the kernel. You have enabled expert mode, which allows you to disable otherwise "standard" features. So for now, you'll need to configure genkernel with MICROCODE=amd or MICROCODE=no, to account for the missing standard features. We could patch genkernel to enforce CPU_SUP_INTEL and CPU_SUP_AMD when MICROCODE=all is set, but I suspect that would still go against your goals. Any suggestions? Apologies, I see you are setting MICROCODE="amd" in genkernel.conf. It's still enforcing CONFIG_MICROCODE_INTEL for that case for some reason. I'm not able to reproduce this failure, can you double-check your genkernel.conf still has MICROCODE="amd", and also attach your kernel config? Created attachment 865320 [details]
updated genkernel.conf
Created attachment 865321 [details]
Kernel config for 6.4.2
What genkernel command are you using? Your genkernel.log says '* MICROCODE overridden on command line to "all".' Bingo, and mea culpa. I call genkernel with a script, which included '--microcode' and not '--microcode=amd'. Changing that and it seems to be running fine. Question: if I do have the proper setting in genkernel.conf, do I even need to mention --microcode on the invokation at all? (I know i can just test it.) I don't know if there is anything you can do in the code to prevent this form of shooting myself in the foot, so feel free to close as NOTABUG. Thanks for the eventual clue. Pretty much all of the genkernel command line options (including microcode) can be toggled in genkernel.conf, there is no need to do both (and as you found out, cmdline overrides genkernel.conf) |