On 2/26/26 04:46, Ani Sinha wrote:


On 25 Feb 2026, at 10:59 PM, Peter Xu <[email protected]> wrote:

Hi, Ani,

On Wed, Feb 25, 2026 at 09:19:40AM +0530, Ani Sinha wrote:
Currently the code that adds a migration blocker does not check
if the same blocker already exists. Return an EEXIST error code
if there is an attempt to add the same migration blocker again.
This way the same migration blocker will not get added twice.

Could you help explain why it will inject two identical errors in
the first place, and why the caller cannot make sure it won't be
injected twice?

Likely due to a bug in the code. For example if the init function
that adds the blocker is called again and the caller does not handle
the second init call properly. This came up as a part of the coco
reset work where migration blockers are added in init methods. They
need not be added again when init methods are again called during
the reset process. The caller can handle it of course but adding a
check further down the call stack makes things more robust.
Since this is the last patch, is it okay to remove it at least for now? Can the situation actually happen?

If not and it's a programming error, even an abort() is okay.

Paolo


Reply via email to