Skip to content
AI News HubLIVE
More
Source content · Analysis pending1 min read

Linus: "A debug session from hell, enormously helped by an AI"

Summary

Notifications You must be signed in to change notification settings Fork 64k Star 244k File tree Expand file treeCollapse file tree Open diff view settings Filter options drivers/gpu/drm/xe xe_vram.c Expand file treeCol…

SourceHacker News AIAuthor: dnw
Linus: "A debug session from hell, enormously helped by an AI"
Report an error

The correction channel is not available yet. You can copy the article reference below for later.

Correction instructions
Read article

Notifications You must be signed in to change notification settings Fork 64k Star 244k File tree Expand file treeCollapse file tree Open diff view settings Filter options drivers/gpu/drm/xe xe_vram.c Expand file treeCollapse file tree Open diff view settings Original file line numberDiff line numberDiff line change @@ -89,12 +89,25 @@ static int get_flat_ccs_offset(struct xe_gt *gt, u64 tile_size, u64 *poffset) 8989 offset = offset_hi mmio, GSMBASE) - 96- ccs_size), 97- "Hole between CCS and GSM.\n"); 93+ /* 94+ * Everything below this offset is handed to the VRAM 95+ * allocator, so it has to be the *first* address the 96+ * compression hardware owns, rounded down. Rounding it up 97+ * publishes CCS storage as free memory. 98+ */ 99+ offset = round_down(offset, SZ_4K); 100+ 101+ /* 102+ * CCS storage must not run into GSM. The old check compared 103+ * the offset against GSMBASE - ccs_size for equality, which 104+ * could not fail: that value is 128K aligned, so it agreed 105+ * with the rounded-up offset even when the base was not 128K 106+ * aligned - exactly the case this fixes. 107+ */ 108+ xe_assert_msg(xe, offset + ccs_size mmio, GSMBASE), 110+ "CCS overlaps GSM.\n"); 98111 } else { 99112 reg = xe_gt_mcr_unicast_read_any(gt, XEHP_FLAT_CCS_BASE_ADDR); 100113 offset = (u64)REG_FIELD_GET(XEHP_FLAT_CCS_PTR, reg) * SZ_64K; 0 (0)

Key points and analysis

Article intelligence

EngineersAdvanced

Key points

  • AI generation is temporarily unavailable; this entry was preserved with deterministic fallback metadata.
  • Notifications You must be signed in to change notification settings Fork 64k Star 244k File tree Expand file treeCollapse file tree Open diff view settings Filter options drivers/…

Highlights and analysis are generated automatically and may contain errors. Check the original source.