Эх сурвалжийг харах

lguest: suppress PS/2 keyboard polling.

While hacking on getting I/O out to the lguest launcher, I noticed
that returning 0xFF for the PS/2 keyboard status made it spin for a
while thinking there was a key pending.  Fix this by returning 1
instead of 0xFF.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Rusty Russell 10 жил өмнө
parent
commit
48fd6b71d6

+ 4 - 0
tools/lguest/lguest.c

@@ -1259,6 +1259,10 @@ static void emulate_insn(const u8 insn[])
 	else
 	else
 		mask = 0xFFFFFFFF;
 		mask = 0xFFFFFFFF;
 
 
+	/* This is the PS/2 keyboard status; 1 means ready for output */
+	if (port == 0x64)
+		val = 1;
+
 	/*
 	/*
 	 * If it was an "IN" instruction, they expect the result to be read
 	 * If it was an "IN" instruction, they expect the result to be read
 	 * into %eax, so we change %eax.
 	 * into %eax, so we change %eax.