All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [Bug 1640525] [NEW] -net socket, connect/listen does not work in 2.7.0
@ 2016-11-09 16:16 Pierre Labastie
  2016-11-09 16:40 ` [Qemu-devel] [Bug 1640525] " Daniel Berrange
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Pierre Labastie @ 2016-11-09 16:16 UTC (permalink / raw)
  To: qemu-devel

Public bug reported:

Using 2.7.0 release on Debian Sid. What I did: start one VM with:
----
/home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
-smp 4 \
-cpu Nehalem \
-soundhw ac97 \
-k fr \
-localtime \
-enable-kvm \
-m 4099 \
-drive file=/mnt/virtualMachines/qemu/lfs-7.10-porg.qcow2,cache=writeback \
-cdrom /mnt/virtualMachines/qemu/grub-img.iso \
-boot order=c,once=d,menu=on \
-vga std \
-serial mon:stdio \
-net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:58 \
-net user,vlan=0,hostfwd=tcp::2223-10.0.2.9:22 \
-net nic,vlan=1,model=e1000,macaddr=52:54:00:12:34:56 \
-net socket,vlan=1,listen=:4321
----
Start another one with:
----
/home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
-smp 4 \
-cpu Nehalem \
-soundhw ac97 \
-k fr \
-localtime \
-enable-kvm \
-m 4099 \
-drive file=/mnt/virtualMachines/qemu/lfs-7.10-october.qcow2,cache=writeback \
-cdrom /mnt/virtualMachines/qemu/grub-img.iso \
-boot order=c \
-serial mon:stdio \
-vga std \
-net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:57 \
-net socket,vlan=0,connect=localhost:4321
----
The network settings of the first machine are:
----
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
    link/ether 52:54:00:12:34:58 brd ff:ff:ff:ff:ff:ff
3: enp0s4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
    link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.9/24 brd 10.0.2.255 scope global br0
       valid_lft forever preferred_lft forever
----
The network settings on the second machine are:
----
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:12:34:57 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.10/24 brd 10.0.2.255 scope global enp0s3
       valid_lft forever preferred_lft forever
----
typing "ping -c 1 10.0.2.10" on the first machine returns:
----
PING 10.0.2.10 (10.0.2.10): 56 data bytes
92 bytes from virtuallfs (10.0.2.9): Destination Host Unreachable
--- 10.0.2.10 ping statistics ---
1 packets transmitted, 0 packets received, 100% packet loss
----
and something similar when typing "ping -c 1 10.0.2.9" on the second machine.

This very same setting works as expected in version 2.6.0. I could bisect, and the offending commit is 16a3df403b1:
----
commit 16a3df403b10c4ac347159e39005fd520b2648bb
Author: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
Date:   Fri May 13 15:35:19 2016 +0800

    net/net: Add SocketReadState for reuse codes
    
    This function is from net/socket.c, move it to net.c and net.h.
    Add SocketReadState to make others reuse net_fill_rstate().
    suggestion from jason.
    
    v4:
     - move 'rs->finalize = finalize' to rs_init()
    
    v3:
     - remove SocketReadState init callback
     - put finalize callback to net_fill_rstate()
    
    v2:
     - rename ReadState to SocketReadState
     - add SocketReadState init and finalize callback
    
    v1:
     - init patch
    
    Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
    Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
    Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
    Signed-off-by: Jason Wang <jasowang@redhat.com>
----

BTW, the systems on both VM are built from
http://www.linuxfromscratch.org. But I do not think this is important,
since I could do the bisect. Of course, I'll be happy to try other VMs,
if you point me to some.

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1640525

Title:
  -net socket,connect/listen does not work in 2.7.0

Status in QEMU:
  New

Bug description:
  Using 2.7.0 release on Debian Sid. What I did: start one VM with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-porg.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c,once=d,menu=on \
  -vga std \
  -serial mon:stdio \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:58 \
  -net user,vlan=0,hostfwd=tcp::2223-10.0.2.9:22 \
  -net nic,vlan=1,model=e1000,macaddr=52:54:00:12:34:56 \
  -net socket,vlan=1,listen=:4321
  ----
  Start another one with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-october.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c \
  -serial mon:stdio \
  -vga std \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:57 \
  -net socket,vlan=0,connect=localhost:4321
  ----
  The network settings of the first machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:58 brd ff:ff:ff:ff:ff:ff
  3: enp0s4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
  4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.9/24 brd 10.0.2.255 scope global br0
         valid_lft forever preferred_lft forever
  ----
  The network settings on the second machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
      link/ether 52:54:00:12:34:57 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.10/24 brd 10.0.2.255 scope global enp0s3
         valid_lft forever preferred_lft forever
  ----
  typing "ping -c 1 10.0.2.10" on the first machine returns:
  ----
  PING 10.0.2.10 (10.0.2.10): 56 data bytes
  92 bytes from virtuallfs (10.0.2.9): Destination Host Unreachable
  --- 10.0.2.10 ping statistics ---
  1 packets transmitted, 0 packets received, 100% packet loss
  ----
  and something similar when typing "ping -c 1 10.0.2.9" on the second machine.

  This very same setting works as expected in version 2.6.0. I could bisect, and the offending commit is 16a3df403b1:
  ----
  commit 16a3df403b10c4ac347159e39005fd520b2648bb
  Author: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
  Date:   Fri May 13 15:35:19 2016 +0800

      net/net: Add SocketReadState for reuse codes
      
      This function is from net/socket.c, move it to net.c and net.h.
      Add SocketReadState to make others reuse net_fill_rstate().
      suggestion from jason.
      
      v4:
       - move 'rs->finalize = finalize' to rs_init()
      
      v3:
       - remove SocketReadState init callback
       - put finalize callback to net_fill_rstate()
      
      v2:
       - rename ReadState to SocketReadState
       - add SocketReadState init and finalize callback
      
      v1:
       - init patch
      
      Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
      Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
      Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
      Signed-off-by: Jason Wang <jasowang@redhat.com>
  ----

  BTW, the systems on both VM are built from
  http://www.linuxfromscratch.org. But I do not think this is important,
  since I could do the bisect. Of course, I'll be happy to try other
  VMs, if you point me to some.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1640525/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1640525] Re: -net socket, connect/listen does not work in 2.7.0
  2016-11-09 16:16 [Qemu-devel] [Bug 1640525] [NEW] -net socket, connect/listen does not work in 2.7.0 Pierre Labastie
@ 2016-11-09 16:40 ` Daniel Berrange
  2016-11-15 17:10 ` Thomas Huth
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Daniel Berrange @ 2016-11-09 16:40 UTC (permalink / raw)
  To: qemu-devel

The patch for this issue is here:

https://lists.gnu.org/archive/html/qemu-devel/2016-11/msg00811.html

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1640525

Title:
  -net socket,connect/listen does not work in 2.7.0

Status in QEMU:
  New

Bug description:
  Using 2.7.0 release on Debian Sid. What I did: start one VM with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-porg.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c,once=d,menu=on \
  -vga std \
  -serial mon:stdio \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:58 \
  -net user,vlan=0,hostfwd=tcp::2223-10.0.2.9:22 \
  -net nic,vlan=1,model=e1000,macaddr=52:54:00:12:34:56 \
  -net socket,vlan=1,listen=:4321
  ----
  Start another one with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-october.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c \
  -serial mon:stdio \
  -vga std \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:57 \
  -net socket,vlan=0,connect=localhost:4321
  ----
  The network settings of the first machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:58 brd ff:ff:ff:ff:ff:ff
  3: enp0s4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
  4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.9/24 brd 10.0.2.255 scope global br0
         valid_lft forever preferred_lft forever
  ----
  The network settings on the second machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
      link/ether 52:54:00:12:34:57 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.10/24 brd 10.0.2.255 scope global enp0s3
         valid_lft forever preferred_lft forever
  ----
  typing "ping -c 1 10.0.2.10" on the first machine returns:
  ----
  PING 10.0.2.10 (10.0.2.10): 56 data bytes
  92 bytes from virtuallfs (10.0.2.9): Destination Host Unreachable
  --- 10.0.2.10 ping statistics ---
  1 packets transmitted, 0 packets received, 100% packet loss
  ----
  and something similar when typing "ping -c 1 10.0.2.9" on the second machine.

  This very same setting works as expected in version 2.6.0. I could bisect, and the offending commit is 16a3df403b1:
  ----
  commit 16a3df403b10c4ac347159e39005fd520b2648bb
  Author: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
  Date:   Fri May 13 15:35:19 2016 +0800

      net/net: Add SocketReadState for reuse codes
      
      This function is from net/socket.c, move it to net.c and net.h.
      Add SocketReadState to make others reuse net_fill_rstate().
      suggestion from jason.
      
      v4:
       - move 'rs->finalize = finalize' to rs_init()
      
      v3:
       - remove SocketReadState init callback
       - put finalize callback to net_fill_rstate()
      
      v2:
       - rename ReadState to SocketReadState
       - add SocketReadState init and finalize callback
      
      v1:
       - init patch
      
      Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
      Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
      Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
      Signed-off-by: Jason Wang <jasowang@redhat.com>
  ----

  BTW, the systems on both VM are built from
  http://www.linuxfromscratch.org. But I do not think this is important,
  since I could do the bisect. Of course, I'll be happy to try other
  VMs, if you point me to some.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1640525/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1640525] Re: -net socket, connect/listen does not work in 2.7.0
  2016-11-09 16:16 [Qemu-devel] [Bug 1640525] [NEW] -net socket, connect/listen does not work in 2.7.0 Pierre Labastie
  2016-11-09 16:40 ` [Qemu-devel] [Bug 1640525] " Daniel Berrange
@ 2016-11-15 17:10 ` Thomas Huth
  2016-11-15 17:25 ` Pierre Labastie
  2017-01-16 11:40 ` Thomas Huth
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Huth @ 2016-11-15 17:10 UTC (permalink / raw)
  To: qemu-devel

Fix has been committed:
http://git.qemu.org/?p=qemu.git;a=commitdiff;h=e79cd4068063ea285919

** Changed in: qemu
       Status: New => Fix Committed

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1640525

Title:
  -net socket,connect/listen does not work in 2.7.0

Status in QEMU:
  Fix Committed

Bug description:
  Using 2.7.0 release on Debian Sid. What I did: start one VM with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-porg.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c,once=d,menu=on \
  -vga std \
  -serial mon:stdio \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:58 \
  -net user,vlan=0,hostfwd=tcp::2223-10.0.2.9:22 \
  -net nic,vlan=1,model=e1000,macaddr=52:54:00:12:34:56 \
  -net socket,vlan=1,listen=:4321
  ----
  Start another one with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-october.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c \
  -serial mon:stdio \
  -vga std \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:57 \
  -net socket,vlan=0,connect=localhost:4321
  ----
  The network settings of the first machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:58 brd ff:ff:ff:ff:ff:ff
  3: enp0s4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
  4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.9/24 brd 10.0.2.255 scope global br0
         valid_lft forever preferred_lft forever
  ----
  The network settings on the second machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
      link/ether 52:54:00:12:34:57 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.10/24 brd 10.0.2.255 scope global enp0s3
         valid_lft forever preferred_lft forever
  ----
  typing "ping -c 1 10.0.2.10" on the first machine returns:
  ----
  PING 10.0.2.10 (10.0.2.10): 56 data bytes
  92 bytes from virtuallfs (10.0.2.9): Destination Host Unreachable
  --- 10.0.2.10 ping statistics ---
  1 packets transmitted, 0 packets received, 100% packet loss
  ----
  and something similar when typing "ping -c 1 10.0.2.9" on the second machine.

  This very same setting works as expected in version 2.6.0. I could bisect, and the offending commit is 16a3df403b1:
  ----
  commit 16a3df403b10c4ac347159e39005fd520b2648bb
  Author: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
  Date:   Fri May 13 15:35:19 2016 +0800

      net/net: Add SocketReadState for reuse codes
      
      This function is from net/socket.c, move it to net.c and net.h.
      Add SocketReadState to make others reuse net_fill_rstate().
      suggestion from jason.
      
      v4:
       - move 'rs->finalize = finalize' to rs_init()
      
      v3:
       - remove SocketReadState init callback
       - put finalize callback to net_fill_rstate()
      
      v2:
       - rename ReadState to SocketReadState
       - add SocketReadState init and finalize callback
      
      v1:
       - init patch
      
      Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
      Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
      Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
      Signed-off-by: Jason Wang <jasowang@redhat.com>
  ----

  BTW, the systems on both VM are built from
  http://www.linuxfromscratch.org. But I do not think this is important,
  since I could do the bisect. Of course, I'll be happy to try other
  VMs, if you point me to some.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1640525/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1640525] Re: -net socket, connect/listen does not work in 2.7.0
  2016-11-09 16:16 [Qemu-devel] [Bug 1640525] [NEW] -net socket, connect/listen does not work in 2.7.0 Pierre Labastie
  2016-11-09 16:40 ` [Qemu-devel] [Bug 1640525] " Daniel Berrange
  2016-11-15 17:10 ` Thomas Huth
@ 2016-11-15 17:25 ` Pierre Labastie
  2017-01-16 11:40 ` Thomas Huth
  3 siblings, 0 replies; 5+ messages in thread
From: Pierre Labastie @ 2016-11-15 17:25 UTC (permalink / raw)
  To: qemu-devel

Great. Thanks to you both.

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1640525

Title:
  -net socket,connect/listen does not work in 2.7.0

Status in QEMU:
  Fix Committed

Bug description:
  Using 2.7.0 release on Debian Sid. What I did: start one VM with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-porg.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c,once=d,menu=on \
  -vga std \
  -serial mon:stdio \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:58 \
  -net user,vlan=0,hostfwd=tcp::2223-10.0.2.9:22 \
  -net nic,vlan=1,model=e1000,macaddr=52:54:00:12:34:56 \
  -net socket,vlan=1,listen=:4321
  ----
  Start another one with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-october.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c \
  -serial mon:stdio \
  -vga std \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:57 \
  -net socket,vlan=0,connect=localhost:4321
  ----
  The network settings of the first machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:58 brd ff:ff:ff:ff:ff:ff
  3: enp0s4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
  4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.9/24 brd 10.0.2.255 scope global br0
         valid_lft forever preferred_lft forever
  ----
  The network settings on the second machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
      link/ether 52:54:00:12:34:57 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.10/24 brd 10.0.2.255 scope global enp0s3
         valid_lft forever preferred_lft forever
  ----
  typing "ping -c 1 10.0.2.10" on the first machine returns:
  ----
  PING 10.0.2.10 (10.0.2.10): 56 data bytes
  92 bytes from virtuallfs (10.0.2.9): Destination Host Unreachable
  --- 10.0.2.10 ping statistics ---
  1 packets transmitted, 0 packets received, 100% packet loss
  ----
  and something similar when typing "ping -c 1 10.0.2.9" on the second machine.

  This very same setting works as expected in version 2.6.0. I could bisect, and the offending commit is 16a3df403b1:
  ----
  commit 16a3df403b10c4ac347159e39005fd520b2648bb
  Author: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
  Date:   Fri May 13 15:35:19 2016 +0800

      net/net: Add SocketReadState for reuse codes
      
      This function is from net/socket.c, move it to net.c and net.h.
      Add SocketReadState to make others reuse net_fill_rstate().
      suggestion from jason.
      
      v4:
       - move 'rs->finalize = finalize' to rs_init()
      
      v3:
       - remove SocketReadState init callback
       - put finalize callback to net_fill_rstate()
      
      v2:
       - rename ReadState to SocketReadState
       - add SocketReadState init and finalize callback
      
      v1:
       - init patch
      
      Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
      Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
      Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
      Signed-off-by: Jason Wang <jasowang@redhat.com>
  ----

  BTW, the systems on both VM are built from
  http://www.linuxfromscratch.org. But I do not think this is important,
  since I could do the bisect. Of course, I'll be happy to try other
  VMs, if you point me to some.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1640525/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1640525] Re: -net socket, connect/listen does not work in 2.7.0
  2016-11-09 16:16 [Qemu-devel] [Bug 1640525] [NEW] -net socket, connect/listen does not work in 2.7.0 Pierre Labastie
                   ` (2 preceding siblings ...)
  2016-11-15 17:25 ` Pierre Labastie
@ 2017-01-16 11:40 ` Thomas Huth
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Huth @ 2017-01-16 11:40 UTC (permalink / raw)
  To: qemu-devel

Fix has been released with QEMU v2.8

** Changed in: qemu
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1640525

Title:
  -net socket,connect/listen does not work in 2.7.0

Status in QEMU:
  Fix Released

Bug description:
  Using 2.7.0 release on Debian Sid. What I did: start one VM with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-porg.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c,once=d,menu=on \
  -vga std \
  -serial mon:stdio \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:58 \
  -net user,vlan=0,hostfwd=tcp::2223-10.0.2.9:22 \
  -net nic,vlan=1,model=e1000,macaddr=52:54:00:12:34:56 \
  -net socket,vlan=1,listen=:4321
  ----
  Start another one with:
  ----
  /home/pierre/build/qemu/build/x86_64-softmmu/qemu-system-x86_64 \
  -smp 4 \
  -cpu Nehalem \
  -soundhw ac97 \
  -k fr \
  -localtime \
  -enable-kvm \
  -m 4099 \
  -drive file=/mnt/virtualMachines/qemu/lfs-7.10-october.qcow2,cache=writeback \
  -cdrom /mnt/virtualMachines/qemu/grub-img.iso \
  -boot order=c \
  -serial mon:stdio \
  -vga std \
  -net nic,vlan=0,model=e1000,macaddr=52:54:00:12:34:57 \
  -net socket,vlan=0,connect=localhost:4321
  ----
  The network settings of the first machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:58 brd ff:ff:ff:ff:ff:ff
  3: enp0s4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
  4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
      link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.9/24 brd 10.0.2.255 scope global br0
         valid_lft forever preferred_lft forever
  ----
  The network settings on the second machine are:
  ----
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
      inet 127.0.0.1/8 scope host lo
         valid_lft forever preferred_lft forever
  2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
      link/ether 52:54:00:12:34:57 brd ff:ff:ff:ff:ff:ff
      inet 10.0.2.10/24 brd 10.0.2.255 scope global enp0s3
         valid_lft forever preferred_lft forever
  ----
  typing "ping -c 1 10.0.2.10" on the first machine returns:
  ----
  PING 10.0.2.10 (10.0.2.10): 56 data bytes
  92 bytes from virtuallfs (10.0.2.9): Destination Host Unreachable
  --- 10.0.2.10 ping statistics ---
  1 packets transmitted, 0 packets received, 100% packet loss
  ----
  and something similar when typing "ping -c 1 10.0.2.9" on the second machine.

  This very same setting works as expected in version 2.6.0. I could bisect, and the offending commit is 16a3df403b1:
  ----
  commit 16a3df403b10c4ac347159e39005fd520b2648bb
  Author: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
  Date:   Fri May 13 15:35:19 2016 +0800

      net/net: Add SocketReadState for reuse codes
      
      This function is from net/socket.c, move it to net.c and net.h.
      Add SocketReadState to make others reuse net_fill_rstate().
      suggestion from jason.
      
      v4:
       - move 'rs->finalize = finalize' to rs_init()
      
      v3:
       - remove SocketReadState init callback
       - put finalize callback to net_fill_rstate()
      
      v2:
       - rename ReadState to SocketReadState
       - add SocketReadState init and finalize callback
      
      v1:
       - init patch
      
      Signed-off-by: Zhang Chen <zhangchen.fnst@cn.fujitsu.com>
      Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
      Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
      Signed-off-by: Jason Wang <jasowang@redhat.com>
  ----

  BTW, the systems on both VM are built from
  http://www.linuxfromscratch.org. But I do not think this is important,
  since I could do the bisect. Of course, I'll be happy to try other
  VMs, if you point me to some.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1640525/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-01-16 11:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-09 16:16 [Qemu-devel] [Bug 1640525] [NEW] -net socket, connect/listen does not work in 2.7.0 Pierre Labastie
2016-11-09 16:40 ` [Qemu-devel] [Bug 1640525] " Daniel Berrange
2016-11-15 17:10 ` Thomas Huth
2016-11-15 17:25 ` Pierre Labastie
2017-01-16 11:40 ` Thomas Huth

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.