v3->v4: --- * rebase on top of Claudio's series [kvm-unit-tests PATCH v3 0/2] lib: s390x: add PSW and PSW_WITH_CUR_MASK macros https://lore.kernel.org/kvm/20221130154038.70492-1-imbrenda@xxxxxxxxxxxxx/ * switch cmm.h to system includes * move const qualifier before struct keyword v2->v3: --- * make allowed_essa_state_masks static (thanks Thomas) * change several variables to unsigned (thanks Claudio) * remove unneeded assignment (thanks Claudio) * fix line length (thanks Claudio) * fix some spellings, line wraps (thanks Thomas) * remove unneeded goto (thanks Thomas) * add migrate_once (thanks Claudio) I introduce migrate_once() only in migration-during-cmm.c for now, but I plan to send a future patch to move it to the library. * add missing READ_ONCE (thanks Claudio) v1->v2: --- * cmm lib: return struct instead of passing in a pointer (thanks Claudio) * cmm lib: remove get_page_addr() (thanks Claudio) * cmm lib: print address of mismatch (thanks Claudio) * cmm lib: misc comments reworked, added and variables renamed * make sure page states change on every iteration (thanks Claudio) * add WRITE_ONCE even when not strictly needed (thanks Claudio) Add a test which changes CMM page states while VM is being migrated. Nico Boehr (2): s390x: add a library for CMM-related functions s390x: add CMM test during migration lib/s390x/cmm.c | 92 ++++++++++++++++++++++++++ lib/s390x/cmm.h | 31 +++++++++ s390x/Makefile | 2 + s390x/migration-cmm.c | 33 ++-------- s390x/migration-during-cmm.c | 123 +++++++++++++++++++++++++++++++++++ s390x/unittests.cfg | 5 ++ 6 files changed, 260 insertions(+), 26 deletions(-) create mode 100644 lib/s390x/cmm.c create mode 100644 lib/s390x/cmm.h create mode 100644 s390x/migration-during-cmm.c -- 2.36.1