从这个网页截图中,可以获取到以下关于漏洞的关键信息: 漏洞描述:GPIO aggregator驱动程序在模块卸载时未能正确保护其处理程序,导致潜在的竞态条件和资源泄漏问题。 具体问题:当一个新的设备存储或删除设备存储触碰模块全局资源(如gpio_aggregator_lock)时,如果在平台设备注册尚未完成的情况下并发进行模块卸载,可能会导致设备未被正确注销/删除,从而留下一个悬挂的平台设备/GPIO转发器。这可能导致系统不稳定和各种问题。 修复措施:通过在这些处理程序中添加 来解决此问题。对于新的设备存储,这消除了最危险的情况:如果从gpio_aggregator_idr分配了一个ID,但platform_device_register尚未调用或完成,那么并发的模块卸载将无法注销/删除设备,从而留下一个悬挂的平台设备/GPIO转发器。 示例脚本:提供了一个简单的重现脚本来演示这些问题,包括循环创建和删除GPIO设备以及加载和卸载gpio-aggregator模块。 警告信息:系统可能出现多种警告信息,例如 和 等,这些警告可能导致系统不稳定。 提交信息: - 作者:Koichiro Den - 提交者:Greg Kroah-Hartman - 提交时间:2025-02-24 23:31:26 +0900 - 提交哈希:d99dc8f7ea01ee1b21306e0eda8eb18a4af80db6 这些信息表明这是一个针对Linux内核GPIO aggregator驱动程序的安全修复,旨在防止由于模块卸载不当而导致的资源泄漏和系统不稳定问题。