当前位置:首页>Linux>官宣!Linux 7.0-rc1 正式发布:Linus 亲解版本号跃升,PCIe 子系统迎来史诗级重构(BAR资源分配最近两个merge window改动非常多)

官宣!Linux 7.0-rc1 正式发布:Linus 亲解版本号跃升,PCIe 子系统迎来史诗级重构(BAR资源分配最近两个merge window改动非常多)

  • 2026-02-26 00:54:53
官宣!Linux 7.0-rc1 正式发布:Linus 亲解版本号跃升,PCIe 子系统迎来史诗级重构(BAR资源分配最近两个merge window改动非常多)

2026年2月22日,全球开源社区迎来里程碑时刻。在 linux-kernel.vger.kernel.org 邮件列表中,Linus Torvalds 以一封轻松诙谐却分量十足的邮件,正式宣告 Linux 7.0-rc1 版本的诞生。这标志着历经两周的合并窗口圆满收官,内核开发正式进入 7.x 时代的候选版本迭代周期。

作为长期深耕 PCIe domain 开发的工程师,我们既为这一开源盛事喝彩,更能从这份发布公告与背后的代码提交中,读懂内核社区「稳健前行」的初心,以及 PCIe 子系统在 7.0 时代的深度革新。本文将全面拆解 Linus 发布背后的故事,详解 7.0-rc1 的核心变化,并聚焦 PCIe 领域的关键更新,为开发者提供第一手参考。

一、Linus 亲述:7.0 版本号,无关「颠覆」,只为「清晰」

在发布邮件的开篇,Linus 就用一贯的幽默风格,化解了外界对「7.0 大版本」的过度解读。这份邮件不仅是一份发布通知,更是对内核版本管理哲学的生动诠释,其中几个关键点,值得每一位内核开发者细细品味。

1. 版本号跃升的「真实原因」:Linus 的「数字焦虑」

不同于其他软件项目将主版本号升级与「颠覆性功能」「兼容性断裂」绑定,Linux 内核的版本号更迭,始终遵循着「务实主义」原则。

Linus 在邮件中直言:「我们启用新的主版本号,纯粹是因为我容易困惑,不擅长处理大数字。」他进一步解释,内核早已不再基于功能或「稳定/不稳定」来划分版本,这次的 7.0,只是一个普通的「坚实进步」标记,仅此而已。

从技术层面看,这次版本号的跨越,是内核迭代节奏的自然结果。Linus 透露了一个清晰的规律:以每年 5-6 个版本的发布速度,内核主版本号大约每 3.5 年就会跃升一次。上一次从 5.x 到 6.x 是 2022 年底,如今时隔近 4 年,7.0 的到来,恰是这一节奏的延续。

对于未来「版本号越来越大」的担忧,Linus 更是展现了从容的心态:「我没有明确的计划,但算一算时间,到时候应该会有更能干的人接手,他们不会害怕两位数的版本号。所以我并不担心。」这份随性与自信,正是 Linux 内核能够持续健康发展的核心特质之一。

2. 合并窗口的「惊喜表现」:史上最「顺滑」的迭代之一

对于内核开发者而言,合并窗口的「顺滑度」,直接关乎候选版本的稳定性。Linus 对本次 7.0-rc1 的合并过程给出了极高评价:「这是我经历过的相当顺利的合并窗口之一。」

他为「顺滑」定下了一个简单却严苛的标准:不需要在自己的任何一台机器上,通过二分法排查启动故障。Linus 坦言,这次之所以能达成这一目标,是因为提前发现并解决了一个潜在的启动失败问题——即便如此,这也依然符合他心中「顺滑」的定义。

这份「顺滑」,背后是全球数千名开发者的严谨协作。在两周的合并窗口中,Linus 及其核心团队处理了海量的代码提交,最终形成的 7.0-rc1,既保持了功能的丰富性,又兼顾了基础的稳定性。

3. 对开发者的「硬核号召」:测试,是 rc 版本的核心使命

即便合并过程顺利,Linus 依然没有放松对测试的要求。在邮件中,他半开玩笑地号召所有开发者:「现在,你们都应该放下手头的一切,跑到电脑前,测试构建并启动这个闪亮的新内核。」

紧接着,他又放缓语气:「开玩笑的,吃完东西慢慢来吧。」但玩笑背后,是对「社区测试」的高度重视。Linus 强调,「对我来说能用不代表对所有人都能用」,rc1 版本的核心价值,就是通过全球开发者的海量测试,暴露潜在的兼容性问题、逻辑漏洞,为后续 rc 版本的迭代和最终 7.0 正式版的发布铺平道路。

这份「严谨中带着幽默」的号召,正是 Linux 内核社区能够持续产出高质量代码的关键——每一个版本的稳定,都离不开全球开发者的共同验证。

4. 7.0-rc1 的「整体画像」:三分之二驱动,三分之一核心

面对海量的代码变更,Linus 给出了一个清晰的「高维度视图」:本次更新的核心结构,依然延续了内核的经典规律——三分之二是驱动程序更新,剩下的三分之一是架构升级、文件系统、工具链及核心内核代码的随机集合

这一结构,既体现了 Linux 内核「硬件适配优先」的核心逻辑,也反映了其核心子系统持续优化的趋势。对于 PCIe 开发者而言,「三分之二驱动」的占比,意味着我们所关注的领域,正是本次更新的核心重点。

此外,Linus 还透露,7.0-rc1 包含的变更数量极多,无法逐一列举,仅在邮件中附上了合并日志,供开发者参考具体的代码来源。而更详细的功能解读,他则建议大家参考 Git 仓库,或是社区中专注于记录内核新特性的开发者内容——这份「懒政」,实则是对社区协作的充分信任。

二、7.0-rc1 全景扫描:不止于版本号,更在于「坚实进步」

除了 Linus 邮件中提到的核心框架,7.0-rc1 还承载着诸多影响深远的更新。作为将大概率成为 Ubuntu 26.04 LTS、Fedora 44 等主流发行版默认内核的版本,其功能优化与硬件适配,将直接影响数千万用户和开发者。

1. 硬件适配:全面拥抱下一代处理器与外设

7.0-rc1 的核心使命之一,是「适配未来硬件」。本次更新全面增强了对新一代处理器的支持,包括英特尔 Nova Lake、Diamond Rapids 处理器,AMD Zen 6 架构,以及高通 Snapdragon X2 平台等。

在图形领域,新增了对 AMD 即将推出的显卡硬件的支持;在存储接口方面,引入了多线程 SPI 与 Octal DTR 技术,使 SPI NAND 设备的性能实现跃升;在硬件监控层面,扩大了对华硕主板传感器的支持范围,配合新增的「非阻塞时间戳」功能,系统状态监测的精度大幅提升。

值得一提的是,本次更新还正式支持了 Apple USB Type-C PHY 控制器,解决了苹果设备与 Linux 系统的兼容性痛点,进一步拓宽了 Linux 的硬件生态。

2. 核心子系统:性能与安全的双重升级

在核心性能优化方面,7.0-rc1 带来了多项突破:

  • • 调度器优化:升级 EEVDF 公平调度算法,针对大小核架构的负载分配更精准,桌面端日常操作、游戏场景的响应延迟降低 18%;
  • • 内存管理:改进大内存场景下的资源分配算法,使 AMD EPYC 平台上的 PostgreSQL 数据库性能显著提升;
  • • 文件系统:对 EXT4、Btrfs、XFS 三大主流文件系统进行深度优化,大文件连续读写速度提升超 22%,随机 IO 延迟降低 13%,同时完善了 NVMe 2.0 固态硬盘的全特性支持。

在安全层面,7.0-rc1 进一步完善了 Landlock 安全模块与内核隔离机制,修复了多个高危内存溢出漏洞,强化了 UEFI 安全启动与全磁盘加密支持,为企业级场景筑牢了安全防线。

3. 开发生态:Rust 支持「正式毕业」,告别实验阶段

本次更新中,最具里程碑意义的变化之一,是 Linux 内核正式结束了 Rust 语言的实验阶段,确认其将作为长期支持的编程语言。

在 7.0-rc1 中,Rust 代码已经深入 VFS(虚拟文件系统)等核心子系统,为内核带来了更强的内存安全性和可靠性。这一变化,标志着 Linux 内核的开发语言生态,从单一的 C 语言,迈向了「C + Rust」的双核心时代,为未来内核的模块化、安全化开发奠定了基础。

此外,本次更新还标准化了通用 I/O 错误报告机制,使不同硬件平台的故障诊断流程趋于统一,大幅降低了开发者的调试成本。

三、核心聚焦:PCIe 子系统在 7.0-rc1 的「史诗级重构」

作为 PCIe domain 开发者,我们最关注的,无疑是本次更新中 PCIe 子系统的变化。由 Bjorn Helgaas 主导的 [GIT,PULL] PCI changes for v7.0 合并请求,最终被顺利合入 torvalds/linux.git,成为 7.0-rc1 的核心组成部分。

这份包含 118 个文件修改、6650 行新增代码、2512 行删除代码的更新,涵盖了枚举、资源管理、驱动绑定、错误处理、电源管理、虚拟化、端点框架等全维度优化,其中多个更新,将直接改变 PCIe 开发者的工作方式。

1. 枚举与配置:更严谨,更贴合协议标准

枚举是 PCIe 设备工作的基础,7.0-rc1 对枚举逻辑进行了多处关键修正,解决了长期存在的「配置不规范」问题。

(1)VF 扩展标签配置:告别「误导性日志」

此前,内核会尝试为 SR-IOV 虚拟功能(VF)启用 Extended Tags 特性,但根据 PCIe 协议,该位在 VF 中是「保留位」,此举不仅无效,还会产生大量误导性的日志信息。

在 7.0-rc1 中,Håkon Bugge 提交的补丁修复了这一问题:内核不再尝试为 VF 启用 Extended Tags,从根源上消除了无效配置与日志噪音,让枚举过程更贴合协议标准。

(2)RCB 初始化:统一根端口与端点的配置逻辑

读取完成边界(RCB)是 PCIe 协议中控制数据传输的关键参数。此前,端点的 RCB 配置会受 ACPI _HPX 方法的影响,导致与根端口的配置不一致,进而引发潜在的传输问题。

本次更新中,内核修改了 RCB 初始化逻辑:在 pci_configure_device() 函数中,直接根据根端口的 RCB 设置,初始化端点的 RCB,彻底摆脱了对 ACPI _HPX 的依赖,确保了整个链路的配置一致性。

(3)ACPI _HPX 作用域:精准管控,避免配置冲突

ACPI _HPX 方法用于传递 PCIe 设备的扩展配置信息,但此前其作用域过于宽泛,容易覆盖 Extended Tag、Relaxed Ordering 等关键设置。

7.0-rc1 对 _HPX 的作用域进行了严格限制:仅在「操作系统拥有热插拔权限,但不拥有 AER(高级错误报告)权限」的场景下,才将 _HPX 中的 PCIe 设置记录应用于 AER 配置。这一修改,避免了「越权配置」导致的参数冲突,让 ACPI 与内核的配置分工更清晰。

2. 资源管理:从「粗放分配」到「精准管控」

PCIe 设备的资源管理(如 IO 地址、内存地址分配),直接影响系统的稳定性与资源利用率。7.0-rc1 对资源管理模块进行了「重构级」优化,核心贡献者是 Ilpo Järvinen,其提交的 27 个补丁,彻底改变了桥接窗口与可选资源的管理逻辑。【BAR资源分配在两个merge window做了非常多的改动】

(1)CardBus 代码分离:精简内核,按需编译

此前,CardBus 相关代码与核心 PCI 代码混杂在一起,即便用户未启用 CONFIG_CARDBUS 配置,这些代码也会被编译进内核。

本次更新将 CardBus 代码全部移至新文件 setup-cardbus.c,并通过 Kconfig 实现「按需编译」——仅当 CONFIG_CARDBUS 启用时,才会编译该部分代码。这一改动,不仅精简了内核体积,还让代码结构更清晰,降低了后续维护的成本。

(2)桥接窗口优化:解决「对齐错误」与「尺寸高估」

桥接窗口的资源分配,是 PCIe 资源管理的难点。此前,内核在处理「可选资源」(如 SR-IOV VF BAR、扩展 ROM)时,会丢失额外的对齐要求,导致桥接窗口对齐错误;同时,内核会「过度估算」桥接窗口的大小,造成资源浪费。

7.0-rc1 修复了这两个核心问题:

  1. 1. 新增 pbus_mem_size_optional() 函数,专门处理可选资源的尺寸计算,确保对齐要求不丢失;
  2. 2. 重写桥接窗口大小计算逻辑,停止过度估算,同时确保窗口之间无间隙分配,大幅提升了资源利用率。

(3)资源层级提升:解决 /proc/iomem 扁平化问题

对于嵌套桥接器和多端点的复杂 PCIe 拓扑,此前内核的 MAX_IORES_LEVEL (资源层级上限)仅为 5,导致 /proc/iomem 无法完整展示资源的嵌套关系,出现「扁平化」问题,给开发者调试带来极大不便。

本次更新将 MAX_IORES_LEVEL 从 5 提升至 8,足以覆盖绝大多数复杂的 PCIe 拓扑,让 /proc/iomem 能够精准展示每一层设备的资源分配情况,为 PCIe domain 开发者的调试工作提供了更清晰的视图。

(4)禁用桥接窗口:不再「虚假声明」,避免资源冲突

此前,内核会尝试「声明」已禁用的桥接窗口资源,这会导致不必要的「声明失败」错误,甚至引发资源冲突。

7.0-rc1 中,内核新增逻辑:对已禁用的桥接窗口,不再进行资源声明,从根源上消除了这类虚假错误,让资源管理更严谨。

3. 驱动绑定与电源管理:更稳定,更高效

驱动绑定的可靠性与电源管理的效率,直接关系到 PCIe 设备的「即插即用」体验和功耗表现。7.0-rc1 对此进行了多处关键修复与优化。

(1)驱动绑定:修复内存泄漏,重构 portdrv 架构

Uwe Kleine-König 提交的 6 个补丁,聚焦于 PCIe 端口驱动(portdrv)的优化:

  1. 1. 修复 pcie_port_remove_service() 函数中的设备引用泄漏问题,避免内存溢出;
  2. 2. 将 pcie_port_bus_match() 与 pcie_port_bus_type 移至 PCIe 专属的 portdrv.c 文件,实现代码解耦;
  3. 3. 重构 portdrv 的驱动模型,改用 pcie_port_bus_type.probe() 和 .remove() 回调函数,为未来移除 struct device_driver 中的 .probe() 和 .remove() 接口铺平道路。

(2)电源管理:两大优化,兼顾效率与稳定性

Brian Norris 提交的补丁,解决了电源管理中的两个核心痛点:

  1. 1. 冗余延迟优化:在设备从 D3hot 过渡到 D3cold 时,如果设备已经处于 D3hot 状态,内核会跳过冗余的延迟等待,大幅提升电源状态切换的效率;
  2. 2. 运行时挂起保护:在设备完全初始化之前,内核会阻止其进入运行时挂起(runtime suspend)状态,避免因保存「未完全配置的设备状态」,导致恢复时出现故障。

(3)电源控制框架:标准化,新增 M.2 支持

Manivannan Sadhasivam 主导的电源控制框架升级,是本次 PCIe 子系统的一大亮点:

  1. 1. 为 pwrseqtc9563、slot 驱动新增统一的 power_on/off 回调函数,实现电源控制的标准化;
  2. 2. 新增 PCIe M.2 连接器支持:让 slot 电源控制驱动能够适配 M.2 形态的 PCIe 设备,拓宽了硬件适配范围;
  3. 3. 重构电源控制的调用逻辑:将电源控制的创建、销毁、上电/断电操作,从 PCI 核心移至主机控制器驱动,让职责划分更清晰。

此外,本次更新还删除了 Qualcomm 驱动中的 .assert_perst() 回调函数——因为该操作现在由控制器驱动统一处理,不再需要驱动层单独实现,进一步简化了驱动开发的流程。

4. 错误处理与虚拟化:更健壮,更安全

错误处理的及时性与虚拟化场景的安全性,是企业级 PCIe 应用的核心需求。7.0-rc1 对此进行了针对性优化。

(1)错误处理:清除陈旧错误,新增 RAS 追踪点

Lukas Wunner 提交的补丁,修复了 AER(高级错误报告)中的「陈旧错误」问题:在探测到报告代理时,内核会主动清除其中的陈旧错误,避免将历史错误识别为「近期错误」,提升了错误诊断的准确性。

Shuai Xue 则新增了两个关键的 RAS(可靠性、可用性、可维护性)追踪点:

  1. 1. 热插拔事件的通用 RAS 追踪点;
  2. 2. 链路速度变化的 RAS 追踪点。

这两个追踪点,让开发者能够更精准地监控 PCIe 设备的运行状态,为故障排查提供了更丰富的日志依据。

(2)虚拟化:ACS 启用时机优化,修复硬件缺陷

虚拟化场景下,ACS(访问控制服务)是保障设备隔离的关键。7.0-rc1 对 ACS 的启用逻辑进行了两处关键优化:

  1. 1. OF 平台 ACS 启用时机:此前,内核会在枚举初期启用 ACS,导致第一个枚举的设备(通常是根端口)无法启用 ACS。本次更新将 ACS 启用时机推迟至「IOMMU 配置完成后」,确保所有设备都能启用 ACS;
  2. 2. 硬件缺陷规避:针对 IDT 0x80b5 和 0x8090 交换机的「ACS 源验证(SV)硬件缺陷」,内核会永久禁用其 ACS SV 功能——此前仅会临时禁用,无法解决设备重置后的问题。

此外,Keith Busch 还修复了插槽重置时的锁机制问题,通过锁定桥接设备,避免了并发重置导致的竞态条件,提升了虚拟化场景下的稳定性。

5. 端点框架与控制器驱动:功能增强,适配更广

端点框架(Endpoint Framework)的完善,以及各大厂商控制器驱动的更新,是 7.0-rc1 PCIe 子系统的「重头戏」,尤其对嵌入式 PCIe 开发、设备端开发意义重大。

(1)端点框架:动态入站映射 + 子范围映射,功能大升级

Koichiro Den 提交的 9 个补丁,为端点框架带来了两项核心功能:

  1. 1. 动态入站映射:新增 dynamic_inbound_mapping 特性位,支持端点控制器在不重置 BAR 的情况下,更新入站地址转换——基于 DWC 的端点控制器已实现该特性;
  2. 2. BAR 子范围映射:新增 subrange_mapping 特性位,支持在单个 BAR 中映射多个独立的入站区域,同时新增了对应的自测试用例,确保功能可靠性。

此外,Aksh Garg 修复了多 PF(物理功能)配置下的可调整大小 BAR 支持问题——此前该功能仅支持 PF 0,本次更新实现了所有 PF 的全面支持,解决了多功能设备的一大痛点。

(2)控制器驱动:新增支持,修复缺陷,重构代码

本次更新覆盖了几乎所有主流厂商的 PCIe 控制器驱动,其中多个更新值得重点关注:

① 新增 ASPEED Root Complex 驱动

Jacky Chou 提交的补丁,新增了对 ASPEED AST2600 PCIe Root Complex 的设备树绑定与驱动支持,填补了该硬件在内核中的空白,同时完善了 TLP 头的 FMT、TYPE、CPL 状态定义,为调试提供了更丰富的依据。

② Qualcomm 驱动:大规模重构与功能增强

Krzysztof Kozlowski 与 Manivannan Sadhasivam 主导了 Qualcomm 驱动的重构:

  1. 1. 将 SDX55、SDM845、IPQ 系列等多款芯片的设备树绑定,从通用 schema 迁移至专属 schema,提升了配置的精准度;
  2. 2. 新增 SA8255p 端点的固件管理支持,适配「由固件配置 PCIe 端点」的场景;
  3. 3. 从所有 PCIe 桥接节点中解析 PERST# 信号,为未来「Switch 下游端口也包含 PERST#」的平台做好准备。

Qiang Yu 则移除了 Qualcomm 根端口的「未实现功能」:删除了 DPC 扩展能力与 MSI-X 能力,让内核能够自动回退到 INTx 中断,避免了「功能声明与实际支持不匹配」的问题。

③ DWC 核心驱动:多项关键修复,性能提升

作为嵌入式领域应用最广泛的 PCIe 控制器核心,DWC 驱动在本次更新中迎来了大量优化:

  1. 1. iATU 优化:支持使用多个 iATU 条目映射大型桥接窗口和 DMA 范围,解决了此前「因窗口过大而分配失败」的问题;
  2. 2. MSI 优化:将端点的 MSI iATU 条目设为永久,替代此前的动态编程,解决了「编程缓慢且易与其他流量竞态」的问题;
  3. 3. 32 位 MSI 支持:优先使用 iMSI-RX 作为 MSI 目标地址,修复了 32 位端点设备的 MSI 通信问题;
  4. 4. 挂起优化:如果链路未建立,跳过 PME_Turn_Off 广播和 L2/L3 状态转换,避免不必要的超时等待。

此外,本次更新还回退了此前「基于链路中断触发枚举」的逻辑——因为 PCI 核心不会为「可能连接的层级」分配总线号,这一回退,避免了枚举失败的潜在问题。

④ 其他厂商驱动:针对性优化
  • • NXP i.MX6:新增外部参考时钟支持,修复 CLKREQ# 控制逻辑,让端点设备能够正常退出 L1.2 链路状态;
  • • NVIDIA Tegra:导出 irq_domain_free_irqs() 函数,允许 PCI/MSI 驱动以模块形式编译,同时放宽 Tegra194 驱动的 Kconfig 限制,适配更多平台;
  • • Renesas RZ/G3S:改用 pci_generic_config_write() 函数,移除不必要的自定义封装,简化了代码;
  • • Sophgo 2044:禁用根端口的 ASPM L0s 和 L1 状态,规避硬件缺陷导致的稳定性问题。

6. P2PDMA 与杂项:修复关键漏洞,完善细节

(1)P2PDMA:修复内存泄漏,纠正错误警告

Hou Tao 提交的补丁,解决了 P2PDMA(PCIe 端到端 DMA)中的两个核心问题:

  1. 1. 当 vm_insert_page() 失败时,释放每 CPU 的 pgmap 引用,避免设备移除时出现系统挂起;
  2. 2. 移除 p2pmem_alloc_mmap() 中关于「页面引用计数」的错误警告,纠正了此前的逻辑判断。

(2)杂项优化:从锁机制到调试体验

  • • 锁机制完善:使用 system_percpu_wq 和 WQ_PERCPU 显式请求每 CPU 工作队列,为未来移除 WQ_UNBOUND 做好准备;
  • • 调试体验提升:为 DWC 驱动的 debugfs ltssm_status 新增 L1.1/L1.2 子状态上下文,让开发者能够更精准地监控链路状态;
  • • 代码健壮性:在端点框架中,同步创建 configfs 子组,避免「与移除操作竞态」导致的空指针解引用问题。

四、开发者视角:7.0-rc1 对 PCIe 开发的实际影响

作为 PCIe domain 开发者,7.0-rc1 的更新,不仅是「代码的变更」,更是「开发模式与调试效率」的提升。结合本次更新的核心内容,我们可以总结出对日常开发的几大实际影响:

1. 驱动开发更简单:标准化接口减少「重复造轮子」

电源控制的标准化、Qualcomm 驱动中 PERST# 处理的统一、portdrv 架构的重构,都让 PCIe 驱动的开发流程更清晰。对于开发者而言,无需再为「电源管理」「中断处理」等基础功能编写重复代码,只需遵循内核提供的标准化接口,即可快速适配新硬件。

2. 调试效率更高:更清晰的资源视图 + 更丰富的追踪点

  • • /proc/iomem 层级的提升,让复杂拓扑的资源分配一目了然;
  • • RAS 追踪点的新增,让热插拔、链路速度变化等关键事件的监控更精准;
  • • DWC 驱动 debugfs 的增强,让链路状态的调试不再依赖「黑盒」。

这些改进,将大幅降低 PCIe 设备故障排查的时间成本。

3. 硬件适配更精准:规避缺陷,支持新形态

  • • 对 IDT 交换机、Sophgo 2044 等硬件的缺陷规避,让驱动能够「兼容硬件不足」;
  • • 对 M.2 连接器、Apple Type-C PHY 等新形态硬件的支持,拓宽了 PCIe 设备的应用场景;
  • • 对多 PF、可调整大小 BAR 等高级功能的完善,满足了企业级、数据中心级应用的需求。

4. 协议兼容性更强:从枚举到错误处理,全面贴合标准

本次更新中的多处修改,均围绕「贴合 PCIe 协议标准」展开——从 VF 扩展标签的禁用,到 RCB 初始化的统一,再到 AER 陈旧错误的清除,都让内核的 PCIe 实现更严谨,减少了「因协议理解偏差」导致的兼容性问题。

五、总结与展望:7.0 时代,PCIe 开发的新起点

Linux 7.0-rc1 的发布,不是「颠覆」,而是「沉淀」。正如 Linus 所言,这个版本号,只是内核「坚实进步」的标记。但对于 PCIe domain 开发者而言,这份「进步」,却有着史诗级的意义——它重构了资源管理逻辑,完善了端点框架,标准化了电源控制,优化了虚拟化安全,让 PCIe 子系统的健壮性、可扩展性、可维护性,提升到了新的高度。

接下来,内核社区将进入为期数周的 rc 版本迭代阶段,从 rc1 到 rc7,每一个版本都会修复大量的 bug,优化细节功能。作为开发者,我们的核心任务,就是积极参与测试,向社区反馈问题,提交补丁——这既是对开源社区的贡献,也是确保 7.0 正式版能够稳定落地的关键。

对于 PCIe 开发领域而言,7.0 时代的到来,是一个新的起点。随着内核对 PCIe 6.0、CXL 等新一代技术的持续适配,未来的 PCIe 开发,将更聚焦于「高性能」「低功耗」「高安全」「高扩展」四大方向。而 7.0-rc1 打下的坚实基础,将为这些技术的落地,铺平道路。

最后,借用 Linus 在发布邮件中的一句话:「测试吧,慢慢来吧。」让我们带着对开源的热爱,对技术的敬畏,共同参与到 Linux 7.0 的迭代中,见证一个更稳定、更强大、更适配未来的内核诞生。

六、日常体验最新Linux kernel

#QEMU PCIe 体验 v7.0-rc1

QEMU 下载慢的有点无语,大家自行体验。
#实体开发板 PCIe 体验 v7.0-rc1

---

欢迎关注我们的微信公众号,获取最新技术解析文章。

欢迎大家加群讨论PCIe技术:我拉大家进群,请加我微信:1053912923
请备注来意!

Hans  CSDN 博客:点击下面链接

https://blog.csdn.net/qq_27846717/article/details/152646990?spm=1001.2014.3001.5501

个人提交的linux kernel PCIe patch: 点击下面链接

https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/log/?qt=author&q=Hans+Zhang

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-28 12:39:28 HTTP/2.0 GET : https://f.mffb.com.cn/a/476642.html
  2. 运行时间 : 0.105511s [ 吞吐率:9.48req/s ] 内存消耗:4,489.28kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=c637421cda3842053ac24e5f2df4d47b
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000638s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000789s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000287s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000297s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000452s ]
  6. SELECT * FROM `set` [ RunTime:0.000217s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000549s ]
  8. SELECT * FROM `article` WHERE `id` = 476642 LIMIT 1 [ RunTime:0.000542s ]
  9. UPDATE `article` SET `lasttime` = 1772253568 WHERE `id` = 476642 [ RunTime:0.010658s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000215s ]
  11. SELECT * FROM `article` WHERE `id` < 476642 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000451s ]
  12. SELECT * FROM `article` WHERE `id` > 476642 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.003245s ]
  13. SELECT * FROM `article` WHERE `id` < 476642 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000592s ]
  14. SELECT * FROM `article` WHERE `id` < 476642 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000888s ]
  15. SELECT * FROM `article` WHERE `id` < 476642 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.017203s ]
0.107207s