drm/xe: Add devcoredump chunking
authorMatthew Brost <matthew.brost@intel.com>
Wed, 23 Apr 2025 17:17:22 +0000 (10:17 -0700)
committerMatthew Brost <matthew.brost@intel.com>
Thu, 24 Apr 2025 22:51:38 +0000 (15:51 -0700)
commitc4a2e5f865b7230a9565c57c54b375b1d2ce82f5
tree3ef003dc8cf25ba28d375bdd0b09e1a2c10e292e
parentf9e4d8bb6aea69aa38e2ef312945408c935feba1
drm/xe: Add devcoredump chunking

Chunk devcoredump into 1.5G pieces to avoid hitting the kvmalloc limit
of 2G. Simple algorithm reads 1.5G at time in xe_devcoredump_read
callback as needed.

Some memory allocations are changed to GFP_ATOMIC as they done in
xe_devcoredump_read which holds lock in the path of reclaim. The
allocations are small, so in practice should never fail.

v2:
 - Update commit message wrt gfp atomic (John H)
v6:
 - Drop GFP_ATOMIC change for hwconfig (John H)

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
Link: https://lore.kernel.org/r/20250423171725.597955-2-matthew.brost@intel.com
drivers/gpu/drm/xe/xe_devcoredump.c
drivers/gpu/drm/xe/xe_devcoredump_types.h