When a client process reading files via hf3fs_fuse.io APIs exited abruptly (such as being killed by SIGKILL), the symlinks under /3fs/3fs-virt/iovs/ are not removed (because iovec.__del__ is not called), and since those symlinks are pointing to shared memories under /dev/shm, those shared memories will never be freed unless someone manually delete those symlinks, or restart the entire hf3fs_fuse_main service.
And of course there're other scenarios in which iovec.__del__ is not called, for example malformed user programs which contains cyclic reference. But if I expect 3FS to serve as a robust fundamental filesystem, which should withstand improper user use cases, what is the proper way to cope with this memory leakage issue?