intel/decode: Add support to new version of Xe KMD devcoredump with canonical addresses

Customers suggested that Xe KMD should change all possible interfaces
visible to users to canonical address, with that we need some changes
to keep the decode of devcoredump working.

A old version of the tool will not be able to decode secondary batch
buffers when parsing a new version of the file but the new version of
this tool will be able to parse both versions of devcoredump file.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37570>
This commit is contained in:
José Roberto de Souza
2025-09-22 11:20:10 -07:00
committed by Marge Bot
parent 24235bcac3
commit c45f442d5c
4 changed files with 13 additions and 4 deletions

View File

@@ -23,6 +23,7 @@
#include "intel_decoder.h"
#include "intel_decoder_private.h"
#include "intel/common/intel_gem.h"
#include "util/macros.h"
#include "util/u_debug.h"
@@ -134,7 +135,7 @@ ctx_get_bo(struct intel_batch_decode_ctx *ctx, bool ppgtt, uint64_t addr)
* bits. In order to correctly handle those aub dumps, we need to mask
* off the top 16 bits.
*/
addr &= (~0ull >> 16);
addr = intel_48b_address(addr);
}
struct intel_batch_decode_bo bo = ctx->get_bo(ctx->user_data, ppgtt, addr);