From 01ac96400c80f279b41a2d6f2261a12e8ad1f946 Mon Sep 17 00:00:00 2001 From: Michael Droettboom Date: Thu, 7 May 2026 14:10:03 -0400 Subject: [PATCH] BUG: Prevent free'ing uninitialized pointer in DeviceEvents --- cuda_core/cuda/core/system/_event.pxi | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cuda_core/cuda/core/system/_event.pxi b/cuda_core/cuda/core/system/_event.pxi index 30aa11efa3..0ad6140bd8 100644 --- a/cuda_core/cuda/core/system/_event.pxi +++ b/cuda_core/cuda/core/system/_event.pxi @@ -125,6 +125,8 @@ cdef class DeviceEvents: cdef intptr_t _device_handle def __init__(self, device_handle: intptr_t, events: EventType | str | list[EventType | str]): + self._event_set = 0 + cdef unsigned long long event_bitmask if isinstance(events, (str, EventType)): events = [events] @@ -150,7 +152,8 @@ cdef class DeviceEvents: nvml.device_register_events(self._device_handle, event_bitmask, self._event_set) def __dealloc__(self): - nvml.event_set_free(self._event_set) + if self._event_set != 0: + nvml.event_set_free(self._event_set) def wait(self, timeout_ms: int = 0) -> EventData: """