从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 问题描述:该漏洞是由commit 1a83a716ec233引入的,该commit考虑了spare memory for __GFP_ZERO,导致MTE(Memory Tagging Extension)错误地报告了slab-out-of-bounds错误。 - 问题原因:当零化spare memory in __do_krealloc时,原始代码只考虑了基于软件的KASAN,并未考虑到MTE。在调用memset之前,它没有重置KASAN标签,导致指针标签和内存标签之间的不匹配,从而产生一个假阳性。 2. 错误示例: - 错误信息:显示了KASAN的slab-out-of-bounds错误,包括CPU、UID、PID、任务名称、硬件名称、堆栈跟踪等详细信息。 3. 修复措施: - 修复代码:修复了commit 1a83a716ec233中考虑spare memory for __GFP_ZERO的问题。 - 修复代码差异:修复了代码中零化spare memory in __do_krealloc的部分,添加了kasan_disable_current和kasan_enable_current函数调用,以正确处理KASAN标签。 4. 签名和认可: - 签名:由Qun-Wei Lin和Vlastimil Babka签名。 - 认可:由David Rientjes和Greg Kroah-Hartman认可。 5. Diffstat: - 文件变化:修复了mm/slab_common.c文件,增加了1个插入和1个删除。 - 代码差异:展示了修复代码的差异,主要修改了零化spare memory in __do_krealloc的部分。 这些信息详细描述了漏洞的引入、问题原因、修复措施、签名和认可,以及代码差异,有助于理解漏洞的背景和修复过程。