Re: [Qemu-devel] [PATCH v5] net: L2TPv3 transport

2014-03-26 Thread Stefan Hajnoczi
On Tue, Mar 25, 2014 at 10:35:28AM +, Anton Ivanov wrote: On 25/03/14 10:17, Stefan Hajnoczi wrote: On Mon, Mar 24, 2014 at 11:56:16AM +, anton.iva...@kot-begemot.co.uk wrote: 1. Correct buffering and corect poll FSM Current qemu queue logic assumes single packet inputs, not

Re: [Qemu-devel] [PATCH v5] net: L2TPv3 transport

2014-03-26 Thread Anton Ivanov (antivano)
[snip] So the fact that qemu_send_packet_async() has returned a non-zero does not mean that we have not paid the price for it :) A non-zero return is simply an error code from the -receive() function. In this case the packet is dropped but queuing is unaffected. The relevant code is in

Re: [Qemu-devel] [PATCH v5] net: L2TPv3 transport

2014-03-25 Thread Stefan Hajnoczi
On Mon, Mar 24, 2014 at 11:56:16AM +, anton.iva...@kot-begemot.co.uk wrote: 1. Correct buffering and corect poll FSM Current qemu queue logic assumes single packet inputs, not multiple packet RX. If the receiver cannot take more packets it will enqueue the new arrivals and incur a

Re: [Qemu-devel] [PATCH v5] net: L2TPv3 transport

2014-03-25 Thread Anton Ivanov
On 25/03/14 10:17, Stefan Hajnoczi wrote: On Mon, Mar 24, 2014 at 11:56:16AM +, anton.iva...@kot-begemot.co.uk wrote: 1. Correct buffering and corect poll FSM Current qemu queue logic assumes single packet inputs, not multiple packet RX. If the receiver cannot take more packets it will

Re: [Qemu-devel] [PATCH v5] net: L2TPv3 transport

2014-03-25 Thread Anton Ivanov
+if (!s-header_mismatch) { +error_report(unknown cookie id\n); +} Do we need to set s-header_mismatch = true to prevent flooding logs? +return -1; +} +} +session = (uint32_t *) (buf + s-session_offset); +if

[Qemu-devel] [PATCH v5] net: L2TPv3 transport

2014-03-24 Thread anton . ivanov
From: Anton Ivanov antiv...@cisco.com This transport allows to connect a QEMU nic to a static Ethernet over L2TPv3 tunnel. The transport supports all options present in the Linux kernel implementation. It allows QEMU to connect to any Linux host running kernel 3.3+, most routers and network