Virtual Accelerator Switchboard (VAS) is an engine stays on the chip. So all windows opened on a specific engine belongs to VAS the chip. The hypervisor expects the partition to close all active windows on the sources system and reopen them after migration on the destination machine.
This patch series adds VAS support with the partition migration. When the migration initiates, the VAS migration handler will be invoked before pseries_suspend() to close all active windows and mark them in-active with VAS_WIN_MIGRATE_CLOSE status. Whereas this migration handler is called after migration to reopen all windows which has VAS_WIN_MIGRATE_CLOSE status and make them active again. The user space gets paste instruction failure when it sends requests on these in-active windows. These patches depend on VAS/DLPAR support patch series Changes in v2: - Added new patch "Define global hv_cop_caps struct" to eliminate memory allocation failure during migration (suggestion by Nathan Lynch) Haren Myneni (4): powerpc/pseries/vas: Define global hv_cop_caps struct powerpc/pseries/vas: Modify reconfig open/close functions for migration powerpc/pseries/vas: Add VAS migration handler powerpc/pseries/vas: Disable window open during migration arch/powerpc/include/asm/vas.h | 2 + arch/powerpc/platforms/pseries/mobility.c | 5 + arch/powerpc/platforms/pseries/vas.c | 236 +++++++++++++++++----- arch/powerpc/platforms/pseries/vas.h | 6 + 4 files changed, 202 insertions(+), 47 deletions(-) -- 2.27.0