[Bugfix][XPU] store the pointer raw bit pattern instead of its numeric value (#54514)

Signed-off-by: Lai, Yejing <yejing.lai@intel.com> Co-authored-by: Kunshang Ji <kunshang.ji@intel.com>

Yejing Lai committed Sep 24, 2026 at 17:05 UTC 14f98cbe5d447d452bb9f670fa82a6e65e3f00e6
1 file changed +4 -4
vllm/v1/worker/gpu/model_states/prompt_embeds.py
+4 -4
@@ -37,8 +37,8 @@ class PromptEmbedsState:
37
38 # Indexed by req_state index. Stale entries after removal are
39 # harmless: add_request rewrites all fields for every index it claims.
40 - self.embeds_ptrs = UvaBackedTensor(max_num_reqs, dtype=torch.int64)
41 - self.mask_ptrs = UvaBackedTensor(max_num_reqs, dtype=torch.int64)
40 + self.embeds_ptrs = UvaBackedTensor(max_num_reqs, dtype=torch.uint64)
41 + self.mask_ptrs = UvaBackedTensor(max_num_reqs, dtype=torch.uint64)
42 self.embeds_lens = UvaBackedTensor(max_num_reqs, dtype=torch.int32)
43
44 def add_request(self, req_index: int, new_req_data: NewRequestData) -> None:
@@ -100,8 +100,8 @@ class PromptEmbedsState:
100 def _apply_prompt_embeds_kernel(
101 inputs_embeds_ptr,
102 inputs_embeds_stride,
103 - embeds_ptrs_ptr, # int64 [max_num_reqs], device pointers (0-len = unused)
104 - mask_ptrs_ptr, # int64 [max_num_reqs], 0 = no is-token-ids mask
103 + embeds_ptrs_ptr, # uint64 [max_num_reqs], device pointers (0-len = unused)
104 + mask_ptrs_ptr, # uint64 [max_num_reqs], 0 = no is-token-ids mask
105 embeds_lens_ptr, # int32 [max_num_reqs]
106 idx_mapping_ptr,
107 query_start_loc_ptr,