scripts/mksysmap
Source file repositories/reference/linux-study-clean/scripts/mksysmap
File Facts
- System
- Linux kernel
- Corpus path
scripts/mksysmap- Extension
[no extension]- Size
- 2164 bytes
- Lines
- 95
- Domain
- Support Tooling And Documentation
- Bucket
- scripts
- Inferred role
- Support Tooling And Documentation: exported/initcall integration point
- Status
- integration implementation candidate
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Exports symbols or registers init work; inspect boot/module ordering and who consumes the exported contract.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#!/bin/sed -f
# SPDX-License-Identifier: GPL-2.0-only
#
# sed script to filter out symbols that are not needed for System.map,
# or not suitable for kallsyms. The input should be 'nm -n <file>'.
#
# System.map is used by module-init tools and some debugging
# tools to retrieve the actual addresses of symbols in the kernel.
#
# readprofile starts reading symbols when _stext is found, and
# continue until it finds a symbol which is not either of 'T', 't',
# 'W' or 'w'.
#
# ---------------------------------------------------------------------------
# Ignored symbol types
#
# a: local absolute symbols
# N: debugging symbols
# U: undefined global symbols
# w: local weak symbols
/ [aNUw] /d
# ---------------------------------------------------------------------------
# Ignored prefixes
# (do not forget a space before each pattern)
# local symbols for ARM, MIPS, etc.
/ \$/d
# local labels, .LBB, .Ltmpxxx, .L__unnamed_xx, .LASANPC, etc.
/ \.L/d
# arm64 EFI stub namespace
/ __efistub_/d
# arm64 local symbols in PIE namespace
/ __pi_\\$/d
/ __pi_\.L/d
# arm64 local symbols in non-VHE KVM namespace
/ __kvm_nvhe_\$/d
/ __kvm_nvhe_\.L/d
# lld arm/aarch64/mips thunks
/ __[[:alnum:]]*Thunk_/d
# CFI type identifiers
/ __kcfi_typeid_/d
/ __kvm_nvhe___kcfi_typeid_/d
/ __pi___kcfi_typeid_/d
# CRC from modversions
/ __crc_/d
# EXPORT_SYMBOL (symbol name)
/ __kstrtab_/d
# EXPORT_SYMBOL (namespace)
/ __kstrtabns_/d
# MODULE_DEVICE_TABLE (symbol name)
/ __mod_device_table__/d
# ---------------------------------------------------------------------------
# Ignored suffixes
# (do not forget '$' after each pattern)
# arm
/_from_arm$/d
Annotation
- Atlas domain: Support Tooling And Documentation / scripts.
- Implementation status: integration implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.