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
|
network: 0.578
socket: 0.570
instruction: 0.519
KVM: 0.508
device: 0.445
other: 0.396
semantic: 0.377
mistranslation: 0.368
graphic: 0.276
boot: 0.178
vnc: 0.131
assembly: 0.082
Silently fail with wrong vde socket dir
Hi,
Using qemu 0.12.5, kvm silently fail with exit code 1 when using -net vde and a wrong path for sock. Actually, the sock option is mean to be the socket dir of the vde_switch, not the socket itself.
With -net vde,sock=/var/run/vde/vde0/ctl , strace ends with the following messages :
connect(7, {sa_family=AF_FILE, path="/var/run/vde/vde0/ctl/ctl"}, 110) = -1 ENOTDIR (Not a directory)
close(7) = 0
close(8) = 0
exit_group(1) = ?
root ~#
Please add a meaningful message.
Regards,
Étienne
Hello,
Could you please provide more data, what kinda of system and version are you running on?
Jes
There's no need to add any more specific information. The bug's in the code in qemu.
net/vde.c:
static int net_vde_init(VLANState *vlan, const char *model,
const char *name, const char *sock,
int port, const char *group, int mode)
{
...
vde = vde_open(init_sock, (char *)"QEMU", &args);
if (!vde){
return -1;
}
...
}
There's no message generated there. Callers merely pass the failure up the road, where it's finally handled as exit(1). If _anything_ is wrong in vde_open() (which can fail due to variety of reasons, including wrong path to the listening socket and what not), nothing will indicate that, just a trivial, silent exit.
Given that you know what the problem is, it would probably have been faster to post a patch than just updating the bug and marking it confirmed....
A fix for this problem has finally been contributed here:
https://git.qemu.org/?p=qemu.git;a=commitdiff;h=7587855cd23755a7a6bd
|