free fds being exhausted eventually because freed fds are never put back
#1 Updated by Zhi Zhang almost 3 years ago
- Backport changed from ham to hammer
The open and create operation in libcephfs will get a free fd from the free_fd_set. This free fd will be erased from the free_fd_set. But in close operation, it just erases this free fd from fd_map and never put it back to free_fd_set. So free_fd_set will exhaust all the free fds initialized at beginning eventually. I think we should put freed fd back to free_fd_set for reusing.