Seagate / propeller

Customized lvmlockd
GNU General Public License v2.0
4 stars 7 forks source link

Fix lockspace time #144

Closed brandonohare closed 3 years ago

brandonohare commented 3 years ago

Datatype change from int to uint64_t for now variable. The variable now is the current time of the system. This is compared to uint64_t variable lock->last_renewal_success

if (now > lock->last_renewal_success + IDM_QUIESCENT_PERIOD) { ilm_failure_handler(ls); ls->failed = 1; ilm_log_dbg("%s: has sent kill path or signal", __func__); continue; }

In systems that have been running for long periods of time, the entire time value for now would be trimmed, while last_renewal_success was not. This caused the statement above to never trigger, causing kill signal testing to run in an infinite loop.

Signed-off-by: Brandon O'Hare brandon.ohare@seagate.com