summary refs log tree commit diff stats
path: root/results/classifier/gemma3:12b/socket/1156632
blob: 07b6c70aaff6858f9ea1d7a5ce518b4c45e96386 (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
not receiving RESET event after system_reset command causes QMP connection to die

I have written my own implementation to control machine running KVM instances with the QMP protocol. Its a pretty basic implementation that sends/receives in the same thread. This means that all of the events QEMU sents are received only when the application expects a reply from a command. In the following scenario, i'm unable to (re)connect to the QMP socket from QEMU after I closed the connection:

1) Connect to QMP 
2) Sent qmp_capabilities
3) Receive reply
4) Send system_reset
5) Receive reply
6) close socket
7) Connect to socket -> connection refused

However, in the following scenario, I am able to connect after I disconnect the socket because I have read the two RESET events:
1) Connect to QMP 
2) Sent qmp_capabilities
3) Receive reply
4) Send system_reset
5) Receive reply
6) Receive reply (is a RESET event)
7) Receive reply (is a RESET event)
8) close socket
9) Connect to socket -> ok

I don't know if this is a bug or expected behavior. I can't find any proper way to disconnect the socket documentated. Am I doïng something wrong, or is this a bug in the QMP implementation of QEMU?