Repository navigation
refactor(log): rename ringlog to deferlog and tidy log Kconfig - #130
Merged
FengHeting merged 1 commit intoNov 5, 2026
Merged
Conversation
The deferred log buffer only stages messages for later plogk() output, so name it deferlog and keep its capacity options under Kernel logging. Group Kernel interfaces options into scoped submenus, move ACPI GPE sizing under Device Drivers, and relocate the shared per-CPU table bound to Processor type and features as PER_CPU_TABLE_MAX_CPUS. Co-Authored-By: Claude Code <noreply@anthropic.com> Signed-off-by: MicroFish <2609948707@qq.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ringlognamed the mechanism after its internal layout rather than itspurpose: it stages formatted messages and replays them through
plogk().Several log-related Kconfig symbols shared the same naming problem, and
NMI_LOG_MAX_CPUSwas presented as log-only although it sizes sharedper-CPU tables.
This PR renames the buffer to
deferlog, groups the kernel-interfacelimits by purpose, and moves each option under the subsystem that owns
it. No runtime behavior changes.
Changes
ringlogtodeferlogacross the file, type, and API(
deferlog_t,deferlog_write(),deferlog_print(),CONFIG_DEFERLOG_*) and update all 12 call sites.Kernel interfacesintoSystem call limits,Kernel logging, andUevent notifications.DEFERLOG_MAX_LENGTH/DEFERLOG_ENTRY_COUNTonKERNEL_LOG,since deferred entries are only flushed through
plogk().ACPI_MAX_GPE_HANDLERSunderDevice Drivers->ACPI support.NMI_LOG_MAX_CPUStoPER_CPU_TABLE_MAX_CPUSand move itunder
Processor type and features; it sizes printk recursiontracking, NMI message parking, and AP microcode revision storage, so
it must not depend on
KERNEL_LOG.KERNEL_LOGhelp text: disabling it compilesplogk()out entirely;
printk()and the console path are unaffected..config-default.Testing
clang-format --dry-run --Werroron all changed C/H filesmake -j$(nproc)succeeds and producesUxImage/Uinxed-x64.iso.config-defaultis stable underkconfig-conf --olddefconfig(cmpclean)CONFIG_KERNEL_LOG=n,PER_CPU_TABLE_MAX_CPUSremainsconfigurable while
DEFERLOG_*disappearmake check(clang-tidy); local validation usedclang-format and a full build
Notes
Config symbol renames in this PR:
CONFIG_LOG_MAX_LENGTH->CONFIG_DEFERLOG_MAX_LENGTH,CONFIG_LOG_BUFFER_SIZE->CONFIG_DEFERLOG_ENTRY_COUNT,CONFIG_NMI_LOG_MAX_CPUS->CONFIG_PER_CPU_TABLE_MAX_CPUS.Existing local
.configfiles should be regenerated or renamed; thedefault values (1024 / 32 / 256) are unchanged.