On Thu, Aug 14, 2025 at 10:17:15AM -0700, Steve Sistare wrote: > Allow a notifier to be added for multiple migration modes. > To allow a notifier to appear on multiple per-node lists, use > a generic list type. We can no longer use NotifierWithReturnList, > because it shoe horns the notifier onto a single list. > > Signed-off-by: Steve Sistare <steven.sist...@oracle.com> > --- > include/migration/misc.h | 12 ++++++++++ > migration/migration.c | 60 > +++++++++++++++++++++++++++++++++++++----------- > 2 files changed, 59 insertions(+), 13 deletions(-) > > diff --git a/include/migration/misc.h b/include/migration/misc.h > index a261f99..592b930 100644 > --- a/include/migration/misc.h > +++ b/include/migration/misc.h > @@ -95,7 +95,19 @@ void migration_add_notifier(NotifierWithReturn *notify, > void migration_add_notifier_mode(NotifierWithReturn *notify, > MigrationNotifyFunc func, MigMode mode); > > +/* > + * Same as migration_add_notifier, but applies to all @mode in the argument > + * list. The list is terminated by -1 or MIG_MODE_ALL. For the latter, > + * the notifier is added for all modes. > + */ > +void migration_add_notifier_modes(NotifierWithReturn *notify, > + MigrationNotifyFunc func, MigMode mode, > ...);
Would it be more common to pass in a bitmask instead (rather than n parameters, plus a ending -1)? -- Peter Xu