x86: realmode: hlt loop as fallback on exit

For systems without emulated devices (e.g., bare-metal), use halt-loop
when exiting the realmode test.

Signed-off-by: Nadav Amit <namit@vmware.com>
Message-Id: <20200626092333.2830-3-namit@vmware.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
diff --git a/x86/realmode.c b/x86/realmode.c
index ef79f7e..301b013 100644
--- a/x86/realmode.c
+++ b/x86/realmode.c
@@ -115,6 +115,10 @@
 static void exit(int code)
 {
 	outb(code, 0xf4);
+
+	while (1) {
+		asm volatile("hlt" ::: "memory");
+	}
 }
 
 struct regs {