mirror of
https://github.com/EttusResearch/uhd.git
synced 2026-10-25 17:36:10 +00:00
rpc_server: remove reference leakage warning
We see this warning about lingering references during UHD operations like image load even if they are not. We did some testing to verify. It seems the garbage collector could take some time to remove these reference. But the warning here could be misleading. Hence, removed.
This commit is contained in:
parent
1da439c020
commit
0dda23bb52
@ -1004,11 +1004,6 @@ class MPMServer(mpm_server_pb2_grpc.MpmServerServiceServicer):
|
||||
The peripheral manager is torn down and re-initialized from scratch.
|
||||
"""
|
||||
self.log.info("Resetting peripheral manager.")
|
||||
# Keep a weak reference so we can verify the old manager is truly
|
||||
# destroyed after we clear all references. A weak reference does not
|
||||
# prevent garbage collection, so if it returns None afterwards we know
|
||||
# __del__ was called and all handles were released.
|
||||
_old_mgr_ref = weakref.ref(self.periph_manager)
|
||||
self.periph_manager.tear_down()
|
||||
# Clear bound-method closures AFTER tear_down() to ensure that if
|
||||
# tear_down() raises, the RPCs remain registered and the old manager
|
||||
@ -1021,12 +1016,6 @@ class MPMServer(mpm_server_pb2_grpc.MpmServerServiceServicer):
|
||||
self._mb_methods = []
|
||||
self._db_methods = []
|
||||
self.periph_manager = None
|
||||
if _old_mgr_ref() is not None:
|
||||
self.log.warning(
|
||||
"Peripheral manager was NOT garbage collected after reset! "
|
||||
"There is probably a lingering reference keeping it alive. "
|
||||
"GPIO/SPI/pipe handles may have leaked."
|
||||
)
|
||||
# Create a new manager and register RPC calls for it.
|
||||
self.periph_manager = self._mgr_generator()
|
||||
self._init_rpc_calls(self.periph_manager)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user