From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39214) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WKrAo-0006ff-Fu for Qemu-devel@nongnu.org; Tue, 04 Mar 2014 10:22:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WKrAh-00081Y-Hb for Qemu-devel@nongnu.org; Tue, 04 Mar 2014 10:22:26 -0500 Received: from rcdn-iport-9.cisco.com ([173.37.86.80]:36726) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WKrAh-00081Q-7v for Qemu-devel@nongnu.org; Tue, 04 Mar 2014 10:22:19 -0500 From: "Anton Ivanov (antivano)" Date: Tue, 4 Mar 2014 15:22:17 +0000 Message-ID: <5315EFA6.1010600@cisco.com> References: <5310489A.4060501@cisco.com> <53105EB0.3060702@redhat.com> <5315EEFE.6060605@cisco.com> In-Reply-To: <5315EEFE.6060605@cisco.com> Content-Language: en-US Content-Type: multipart/mixed; boundary="_002_5315EFA61010600ciscocom_" MIME-Version: 1.0 Subject: Re: [Qemu-devel] Contribution - L2TPv3 transport List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: "Qemu-devel@nongnu.org" , Stefan Hajnoczi --_002_5315EFA61010600ciscocom_ Content-Type: text/plain; charset="iso-8859-1" Content-ID: <6ED15BBD8FC6D04898473F480843D92B@emea.cisco.com> Content-Transfer-Encoding: quoted-printable Apologies, missed to diff the json definitions. Attached. On 04/03/14 15:19, Anton Ivanov wrote: > Attached is a revised version. > > * I am still keeping the sendmsg instead of iov_send because I=20 > have not had the time to review udp.c in the kernel and do the=20 > relevant regression testing to see if they connect() still breaks=20 > bind() on multihomed hosts as it did in 2.6. We can revisit that at a=20 > later date, without doing the proper investigation I am not=20 > comfortable trying this. > > * I have killed completely parse6 and replaced that by a common=20 > getaddrinfo() with a selectable address family based on the boolean=20 > flags. This also allows to force a specific v4 or v6 address choice=20 > for dst. > > * addresses now are specified separately from ports and ports are=20 > deliberately strings so you can specify them as a protocol. > > * mode bitmask is gone it is all booleans now - both for option=20 > invocation and internally in the code. > > * I have added the extra offset back in so it is feature by=20 > feature compatible with linux kernel implementation. > > * All mallocs are now to exact size and > > * Indentation, style, debug, etc are all as requested now. > > * l2tpv3.h has become surplus to requirements and is gone now. > > * it now has proper cleanup. > > * I have tested it for a few setups (mostly v4) and it works as=20 > advertised. I need to rewrite my tests scripts for the new options=20 > names to give it a full test. I would not expect that to show any=20 > problems though - core send/receive logic is unchanged from the=20 > original version. > > * I have not yet addressed the page size and page alignment of=20 > buffers items - leaving that open for an RFC on how to get the max=20 > performance there and how to make it expandable lately so one can=20 > re-configure it for large MTU/jumbo frames. > > Example magic incantation to invoke it with the new options: > > #!/bin/sh > > kvm -hda kvm.img -m 1024 \ > -net nic,vlan=3D0,model=3Dvirtio,macaddr=3D0a:98:fc:96:83:01 \ > -net=20 > l2tpv3,vlan=3D0,udp,src=3D192.168.63.1,srcport=3D1700,dst=3D192.168.63.1,= dstport=3D1701,cookie64,txcookie=3D0x0123456789abcdef,rxcookie=3D0xfedcba98= 76543210,rxsession=3D0xffffffff,txsession=3D0xffffffff,counter > > A. --_002_5315EFA61010600ciscocom_ Content-Type: text/x-patch; name="l2tpv3-json.diff" Content-Description: l2tpv3-json.diff Content-Disposition: attachment; filename="l2tpv3-json.diff"; size=2053; creation-date="Tue, 04 Mar 2014 15:22:16 GMT"; modification-date="Tue, 04 Mar 2014 15:22:16 GMT" Content-ID: Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3FhcGktc2NoZW1hLmpzb24gYi9xYXBpLXNjaGVtYS5qc29uDQppbmRleCA4 M2ZhNDg1Li41NmVhYzZkIDEwMDY0NA0KLS0tIGEvcWFwaS1zY2hlbWEuanNvbg0KKysrIGIvcWFw aS1zY2hlbWEuanNvbg0KQEAgLTI5NDAsNiArMjk0MCw2MiBAQA0KICAgICAnKmxvY2FsYWRkcic6 ICdzdHInLA0KICAgICAnKnVkcCc6ICAgICAgICdzdHInIH0gfQ0KIA0KKyMgQE5ldGRldkwyVFB2 M09wdGlvbnMNCisjDQorIyBDb25uZWN0IHRoZSBWTEFOIHRvIEV0aGVybmV0IG92ZXIgTDJUUHYz IFN0YXRpYyB0dW5uZWwNCisjDQorIyBAaXB2NjogI2Jvb2wsIHVzZSBpcHY2IA0KKyMNCisjIEB1 ZHA6ICNib29sIHVzZSB0aGUgdWRwIHZlcnNpb24gb2YgdGhlIEwyVFB2MyBlbmNhcHN1bGF0aW9u DQorIw0KKyMgQGNvb2tpZTY0IDogI3VzZSA2NCBiaXQgY29va2llcw0KKyMNCisjIEBvZmZzZXQg OiAjZXh0cmEgb2Zmc2V0DQorIw0KKyMgQGNvdW50ZXIgOiAjaGF2ZSBzZXF1ZW5jZSBjb3VudGVy DQorIw0KKyMgQGZkOiAjb3B0aW9uYWwgZmlsZSBkZXNjcmlwdG9yIG9mIGFuIGFscmVhZHkgb3Bl bmVkIHNvY2tldA0KKyMNCisjIEBzcmM6ICNzb3VyY2UgYWRkcmVzcw0KKyMNCisjIEBzcmNwb3J0 OiAjc291cmNlIHBvcnQgLSBtYW5kYXRvcnkgZm9yIHVkcCwgb3B0aW9uYWwgZm9yIGlwDQorIw0K KyMgQGRzdDogI2Rlc3RpbmF0aW9uIGFkZHJlc3MNCisjDQorIyBAZHN0cG9ydDogI2Rlc3RpbmF0 aW9uIHBvcnQgLSBtYW5kYXRvcnkgZm9yIHVkcCwgb3B0aW9uYWwgZm9yIGlwDQorIw0KKyMgQHR4 Y29va2llOiAjb3B0aW9uYWwgMzIgb3IgNjQgYml0IHR4IGNvb2tpZSBmb3IgdGhlIHR1bm5lbCAN CisjDQorIyBAcnhjb29raWU6ICNvcHRpb25hbCAzMiBvciA2NCBiaXQgcnggY29va2llIGZvciB0 aGUgdHVubmVsDQorIw0KKyMgQHR4c2Vzc2lvbjogI3R4IDMyIGJpdCBzZXNzaW9uDQorIw0KKyMg QHJ4c2Vzc2lvbjogI3J4IDMyIGJpdCBzZXNzaW9uIC0gaWYgdW5zZXQgdmFsdWUgZm9yIHR4c2Vz c2lvbiBpcyB1c2VkDQorIw0KKyMNCisjIFNpbmNlIDEuMg0KKyMjDQorIyMNCit7ICd0eXBlJzog J05ldGRldkwyVFB2M09wdGlvbnMnLA0KKyAgJ2RhdGEnOiB7DQorICAgICcqZmQnOiAgICAgICAg J3N0cicsDQorICAgICdzcmMnOgkgICdzdHInLCANCisgICAgJ2RzdCc6CSAgJ3N0cicsIA0KKyAg ICAnKnNyY3BvcnQnOgkgICdzdHInLCANCisgICAgJypkc3Rwb3J0JzoJICAnc3RyJywgDQorICAg ICcqaXB2Nic6CSAgJ2Jvb2wnLCANCisgICAgJyp1ZHAnOgkgICdib29sJywgDQorICAgICcqY29v a2llNjQnOiAgJ2Jvb2wnLCANCisgICAgJypjb3VudGVyJzogICAnYm9vbCcsIA0KKyAgICAnKnR4 Y29va2llJzogICd1aW50NjQnLA0KKyAgICAnKnJ4Y29va2llJzogICd1aW50NjQnLA0KKyAgICAn dHhzZXNzaW9uJzogJ3VpbnQzMicsDQorICAgICcqcnhzZXNzaW9uJzogJ3VpbnQzMicsDQorICAg ICcqb2Zmc2V0JzogICd1aW50MzInIA0KKw0KK30gfQ0KKw0KKyMjDQogIyMNCiAjIEBOZXRkZXZW ZGVPcHRpb25zDQogIw0KQEAgLTMwMTQsMTMgKzMwNzAsMTYgQEANCiAjIEEgZGlzY3JpbWluYXRl ZCByZWNvcmQgb2YgbmV0d29yayBkZXZpY2UgdHJhaXRzLg0KICMNCiAjIFNpbmNlIDEuMg0KLSMj DQorIw0KKyMgQWRkZWQgaW4gMi4wIC0gbDJ0cHYzIA0KKyMNCiB7ICd1bmlvbic6ICdOZXRDbGll bnRPcHRpb25zJywNCiAgICdkYXRhJzogew0KICAgICAnbm9uZSc6ICAgICAnTmV0ZGV2Tm9uZU9w dGlvbnMnLA0KICAgICAnbmljJzogICAgICAnTmV0TGVnYWN5TmljT3B0aW9ucycsDQogICAgICd1 c2VyJzogICAgICdOZXRkZXZVc2VyT3B0aW9ucycsDQogICAgICd0YXAnOiAgICAgICdOZXRkZXZU YXBPcHRpb25zJywNCisgICAgJ2wydHB2Myc6ICAgJ05ldGRldkwyVFB2M09wdGlvbnMnLA0KICAg ICAnc29ja2V0JzogICAnTmV0ZGV2U29ja2V0T3B0aW9ucycsDQogICAgICd2ZGUnOiAgICAgICdO ZXRkZXZWZGVPcHRpb25zJywNCiAgICAgJ2R1bXAnOiAgICAgJ05ldGRldkR1bXBPcHRpb25zJywN Cg== --_002_5315EFA61010600ciscocom_--