Primary thread topology default#1
Open
jackYoung0915 wants to merge 7 commits into
Open
Conversation
This document includes: - PCIe basic concepts and bandwidth comparison - PCIe topology structure (Root Complex, Switch, Endpoint) - Configuration space layout and BAR registers - Transaction Layer Protocol (TLP) types - Linux kernel PCI subsystem architecture - Device enumeration flow with code analysis - Driver loading and probe sequence - Key data structures (pci_dev, pci_driver, pci_bus) - Practical examples and debugging tips Suitable for technical sharing and knowledge transfer. Co-authored-by: 15605196882 <15605196882@163.com>
|
Cursor Agent can help with this pull request. Just |
Detailed documentation of schedutil cpufreq governor including: - Overall architecture and component relationships - Trigger points from CFS/RT/DL/SCX schedulers - Core processing flow with function call chains - Fast path vs slow path frequency update mechanisms - Key function interfaces at each layer - Data structures (sugov_policy, sugov_cpu, sugov_tunables) - Frequency calculation formulas and IO wait boost - Sequence diagrams for both fast and slow paths - Debugging and tracing techniques Based on Linux 6.19-rc7 kernel source code. Co-authored-by: 15605196882 <15605196882@163.com>
Added comprehensive section on CPPC (Collaborative Processor Performance Control): - CPPC uses the same schedutil framework as other drivers - Fast switch condition depends on DESIRED_PERF register location - System Memory/IO enables fast path, PCC requires slow path - Detailed cppc_cpufreq_fast_switch() and cppc_set_perf() flow - Complete call chains for both fast and slow paths with CPPC - Comparison table: CPPC vs Intel P-State vs ACPI CPUFreq - CPPC-specific debugging commands This clarifies that CPPC frequency scaling follows the same schedutil governor flow, with driver-layer differences. Co-authored-by: 15605196882 <15605196882@163.com>
Detailed documentation covering: - NOHZ_FULL (Full Dynticks/Adaptive Ticks) concepts and mechanisms - Linux tick mechanism evolution (HZ_PERIODIC → NO_HZ_IDLE → NO_HZ_FULL) - Working principles with state transition diagrams - Kernel configuration options and boot parameters - Housekeeping CPU mechanism and isolation types - Tick dependency management API - RCU callback offloading (rcu_nocbs) - OS jitter sources and mitigation strategies - Application scenarios: - Real-time systems - High Performance Computing (HPC) - Low-latency trading systems - Virtualization/cloud computing - Best practice configurations with example scripts - Debugging and verification techniques - Known limitations and caveats Based on kernel source analysis of tick-sched.c, isolation.c, and official kernel documentation. Co-authored-by: 15605196882 <15605196882@163.com>
- 新增 1.5 节:PCIe 发展历程 - 前 PCIe 时代(PCI 1.0 ~ PCI-X 2.0) - PCIe 各代际发展(1.0 ~ 7.0),包含技术要点、带宽参数、关键里程碑 - 带宽演进时间线图 - PCI-SIG 标准管理组织介绍 - 新增第 11 节:pci-utils 基本用法 - 安装方式(多发行版) - lspci 详细用法及常用选项组合 - setpci 读写配置空间寄存器用法 - update-pciids 更新 PCI ID 数据库 - 实用调试场景(链路降速排查、MSI-X 检查、未知设备识别、Bug 报告导出) - libpci 编程接口示例 - 更新目录和参考资料 - 文档版本更新为 1.1 Co-authored-by: Slim6882 <jackYoung0915@users.noreply.github.com>
- 为所有 11 个主章节补充二级子节目录 - 保持缩进对齐:1-9 章用 3 空格缩进,10-11 章用 4 空格缩进 - 所有子节标题均带有锚点链接,方便页内跳转 Co-authored-by: Slim6882 <jackYoung0915@users.noreply.github.com>
Pcie发展与pci-utils
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.
Add
PCIe_Knowledge_Summary.mdto document PCIe essentials and Linux kernel device loading for a presentation.