@@ -21,32 +21,26 @@ def release_lock(lock_fd):
2121
2222def create_or_link_shm (name , expected_size ):
2323 lock_fd = acquire_lock ()
24+ # In case the size mismatch.
25+ safe_name = f"lightllm_{ name } _{ expected_size } "
2426 try :
2527 try :
26- shm = shared_memory .SharedMemory (name = name , create = True , size = expected_size )
28+ shm = shared_memory .SharedMemory (name = safe_name , create = True , size = expected_size )
2729 logger .info (f"Created new shared memory: { name } ({ expected_size = } )" )
2830 return shm
2931 except FileExistsError :
3032 try :
31- shm = shared_memory .SharedMemory (name = name )
33+ shm = shared_memory .SharedMemory (name = safe_name )
3234 except FileNotFoundError :
3335 logger .warning (f"Shared memory { name } disappeared, retrying..." )
34- shm = shared_memory .SharedMemory (name = name , create = True , size = expected_size )
36+ shm = shared_memory .SharedMemory (name = safe_name , create = True , size = expected_size )
3537 except Exception as e :
3638 logger .error (f"Unexpected error attaching to shared memory { name } : { e } " )
3739 raise
38- if shm .size != expected_size :
39- logger .warning (f"Size mismatch: expected { expected_size } , got { shm .size } . Recreating { name } ..." )
40- shm .close ()
41- try :
42- shm .unlink ()
43- except FileNotFoundError :
44- pass
45- shm = shared_memory .SharedMemory (name = name , create = True , size = expected_size )
4640 logger .info (f"Attached to existing shared memory: { name } ({ expected_size = } )" )
4741 return shm
4842 except Exception as e :
49- logger .error (f"Unexpected error creating shared memory { name } : { e } " )
43+ logger .error (f"Unexpected error creating shared memory { safe_name } : { e } " )
5044 raise
5145 finally :
5246 release_lock (lock_fd )
0 commit comments