{"slug": "linus-torvalds-uses-ai-to-debug-an-intel-gpu-driver-bug", "title": "Linus Torvalds uses AI to debug an Intel GPU driver bug", "summary": "Linus Torvalds fixed a one-line bug in the Linux kernel's Xe Intel GPU driver that caused random screen corruption and job timeouts, after spending a day debugging the issue. The bug, introduced two years ago in commit 37173392741c, rounded up the CCS memory address to the nearest 128kB boundary, causing the driver to use memory that wasn't aligned, leading to corruption when used for GPU page tables. Torvalds committed the fix as commit 818bebeb63dd (\"drm/xe: Don't hand out the flat CCS storage as usable VRAM\").", "body_md": "drm: xe: Kernel-submitted job timed out\nLinus Torvalds\ntorvalds at linux-foundation.org\nFri Aug 21 03:50:44 UTC 2026\nPrevious message (by thread):\ndrm: xe: Kernel-submitted job timed out\nNext message (by thread):\n[PATCH v4 0/5] powervr: MT8173 GPU support\nMessages sorted by:\n[ date ]\n[ thread ]\n[ subject ]\n[ author ]\n\n```\nOn Tue, 18 Aug 2026 at 23:55, Linus Torvalds\n<torvalds at linux-foundation.org> wrote:\n>\n> It turns out that now I can generate those drm job timedout issues at will.\n>\n> [  +1.222075] xe 0000:4b:00.0: [drm] Tile0: GT0: Engine reset:\n\nOk. I've spent all day today on chasing this down in between merge\nwindow work, since it finally *was* repeatable.\n\nAnd the fix ends up being basically a one-liner, even if the debug\nsession to get there was not.\n\nThe Xe driver takes the memory address used for the memory stolen for\nCCS, and rounds it up to the nearest 128kB area.\n\nAnd that is very VERY wrong, because it means that the xe driver will\nthen *use* that part of memory that wasn't at a 128kB boundary. And\nthe HW engine will too and write to it.\n\nAnd when that memory happens ot be used for GPU page tables, very bad\nthings happen.\n\nI bet this also explains some occasional random screen corruption I've\nseen - when the memory isn't used for something as important as a page\ntable, it \"only\" corrupts random bitmap memory and the like.\n\nI committed the fix as commit 818bebeb63dd (\"drm/xe: Don't hand out\nthe flat CCS storage as usable VRAM\").\n\nAdding some people from commit 37173392741c (\"drm/xe/vram: fix ccs\noffset calculation\") to the cc, because that's where the problem came\nfrom. Two years ago. I'm not sure why it became so repeatable for me\nnow, but some user space behavior change clearly triggered it now\npretty much every single boot.\n\n                 Linus\n```\n\nPrevious message (by thread):\ndrm: xe: Kernel-submitted job timed out\nNext message (by thread):\n[PATCH v4 0/5] powervr: MT8173 GPU support\nMessages sorted by:\n[ date ]\n[ thread ]\n[ subject ]\n[ author ]\nMore information about the dri-devel mailing list", "url": "https://wpnews.pro/news/linus-torvalds-uses-ai-to-debug-an-intel-gpu-driver-bug", "canonical_source": "https://lists.freedesktop.org/archives/dri-devel/2026-August/590630.html", "published_at": "2026-08-21 15:57:39+00:00", "updated_at": "2026-08-21 16:15:05.229619+00:00", "lang": "en", "topics": ["artificial-intelligence"], "entities": ["Linus Torvalds", "Linux kernel", "Intel", "Xe driver", "dri-devel mailing list"], "alternates": {"html": "https://wpnews.pro/news/linus-torvalds-uses-ai-to-debug-an-intel-gpu-driver-bug", "markdown": "https://wpnews.pro/news/linus-torvalds-uses-ai-to-debug-an-intel-gpu-driver-bug.md", "text": "https://wpnews.pro/news/linus-torvalds-uses-ai-to-debug-an-intel-gpu-driver-bug.txt", "jsonld": "https://wpnews.pro/news/linus-torvalds-uses-ai-to-debug-an-intel-gpu-driver-bug.jsonld"}}