Project

General

Profile

Bug #20474

Updated by Lukas Zapletal over 7 years ago

In #20173 we fixed possible race condition, but there is one more: 

 * create reservation 
 * call unused_ip and X is returned 
 * delete the above reservation 
 * call unused_ip and Y is returned 

 Now, the contract is expected to satisfy X != Y but it's not the case right now thanks to the design of our unused_ip method (rotating list shifts to the left on delete returning already returned IP). I think we need to rethink how this is done. 

 We should also not use /tmp as the directory, it's getting deleted via systemd timer in RHEL7 or other distros as well. 

Back