@@ -242,7 +242,7 @@ def test_buffer_close():
242242def test_buffer_external_host ():
243243 a = (ctypes .c_byte * 20 )()
244244 ptr = ctypes .addressof (a )
245- buffer = Buffer .from_handle (ptr , 20 , owner = ptr )
245+ buffer = Buffer .from_handle (ptr , 20 , owner = a )
246246 assert not buffer .is_device_accessible
247247 assert buffer .is_host_accessible
248248 assert buffer .device_id == - 1
@@ -315,17 +315,20 @@ def test_buffer_external_pinned_registered(change_device):
315315 assert buffer .device_id == - 1
316316
317317 handle_return (driver .cuMemHostRegister (ptr , 20 , 0 ))
318- if change_device :
319- # let's switch to a different device if possibe
320- # to make sure we get the original device id
321- d = Device (0 )
322- d .set_current ()
318+ try :
319+ if change_device :
320+ # let's switch to a different device if possibe
321+ # to make sure we get the original device id
322+ d = Device (0 )
323+ d .set_current ()
323324
324- buffer = Buffer .from_handle (ptr , 20 , owner = ptr )
325- assert buffer .is_device_accessible
326- assert buffer .is_host_accessible
327- assert buffer .device_id == dev_id
328- buffer .close ()
325+ buffer = Buffer .from_handle (ptr , 20 , owner = ptr )
326+ assert buffer .is_device_accessible
327+ assert buffer .is_host_accessible
328+ assert buffer .device_id == dev_id
329+ buffer .close ()
330+ finally :
331+ handle_return (driver .cuMemHostUnregister (ptr ))
329332
330333
331334@pytest .mark .parametrize ("change_device" , [True , False ])
0 commit comments