summary refs log tree commit diff stats
path: root/results/classifier/zero-shot/118/peripherals/2860
blob: fbc74d69d694b18b4a36204e5c61cfdd3a0fb4a4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
peripherals: 0.978
debug: 0.971
graphic: 0.958
device: 0.938
virtual: 0.925
KVM: 0.922
boot: 0.913
ppc: 0.904
PID: 0.896
performance: 0.859
hypervisor: 0.809
architecture: 0.775
VMM: 0.766
socket: 0.701
kernel: 0.692
network: 0.676
semantic: 0.658
mistranslation: 0.654
permissions: 0.642
risc-v: 0.628
vnc: 0.592
TCG: 0.591
x86: 0.556
arm: 0.550
register: 0.538
i386: 0.527
files: 0.476
user-level: 0.448
assembly: 0.397

ps2 keyboard not work after boot and use libspice to connect it
Description of problem:
When I start almost 10 qemu virtual machines, there will always be one or two that have the ps2 keyboard not work well after booted.But I use mstsc to connect to the desktop, the keyboard works fine. But when reboot or migrate it well recovery.
Steps to reproduce:
1.Asynchronously start 40 qemu virtual machines, each with 4 cores and 4 threads

2.there will always be one or two that have the ps2 keyboard not work well.

4.And when i gdb debug it, i found i hang at the func "prepare_mmio_access"

5.reboot or migrate it well recovery
Additional information:
the gdb debug as fllow:

gdb attach $pid 

gdb>b kbd_push_key      //spice input

gdb>b kbd_read_data

gdb>b ps2_keyboard_event

gdb>c

After continue, the code run on ps2_keyboard_event,but no work to "kbd_read_data".This Proves that the keyboard input has been added to the queue, but has not been read from the queue.

gdb> thread 4   //switch to thread "CPU 0/KVM"

gdb> bt

![image](/uploads/82527d2b382cacd2d4e40793d78d3e59/image.png)

I guess there is no event to notify the device to read after writing to the queue, or is it deadlocked? I'm not sure