On Fri, 2025-07-25 at 23:58 -0400, Benjamin Marzinski wrote: > There is a race condition when changing reservation keys where a > failed > path could come back online after libmpathpersist checks the paths, > but > before it updates the reservation key. In this case, the path would > come > up and get reregistered with the old key by multipathd, and > libmpathpersist would not update its key, because the path was down > when it checked. > > To fix this, check the paths after updating the key, so any path that > comes up after getting checked will use the updated key.
In do_mpath_persistent_reserve_out(), you call update_prkey_flags() before checking for MPATH_PR_SYNTAX_ERROR. Perhaps you should check the key parameters first? Martin