Booted up pre-created image sle-12-SP2-Server-DVD-aarch64-allpatterns.qcow2 by qemu on ARM machine:
qemu-system-aarch64 -enable-kvm -serial file:serial0 -device virtio-gpu-pci -m 1024 -cpu host -machine virt,usb=off,gic-version=host -netdev user,id=qanet0 -device virtio-net,netdev=qanet0,mac=52:54:00:12:34:56 -device virtio-scsi-pci,id=scsi0 -device virtio-blk-device,drive=hd1 -drive file=sle-12-SP2-Server-DVD-aarch64-allpatterns.qcow2,cache=unsafe,if=none,id=hd1,format=qcow2 -drive media=cdrom,if=none,id=cd0,format=raw,file=SLE-12-SP3-Server-DVD-aarch64-Build0450-Media1.iso,snapshot=on -device scsi-cd,drive=cd0,bus=scsi0.0,bootindex=0 -bios /usr/share/qemu/qemu-uefi-aarch64.bin -device nec-usb-xhci -device usb-tablet -device usb-kbd -vnc :91,share=force-shared -qmp unix:qmp_socket,server,nowait
and found:
The issue can be reproduced which could not switch back from tty to X11.
Fully patches applied on aarch64 12SP2 then reboot system that can solve this issue.
So this could be a product bug on aarch64 12SP2, but I don't think that can be resolved on original source system,
the only way is to adapt offline migration script to add 'reboot' action after fully patches to apply new kernel
which like online migration script do.
I am going to adapt update/patch_before_migration.pm...