From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from m15-35.126.com (m15-35.126.com [220.181.15.35]) by dpdk.org (Postfix) with ESMTP id 3C18CC5E6 for ; Tue, 5 May 2015 13:45:42 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=126.com; s=s110527; h=Date:From:Subject:MIME-Version:Message-ID; bh=kpVxq NC1DT2v79bI7ogbFdugW43fSWR5uQ7lI3X3f6w=; b=gbP8rbS8lSc4Yj+QDWO3p MvtUxqMfoERW8wcJOVu6tArJbhGIc27N6luXdoWe1SMG5u9L6/ggyoE6v/R+uG0s d36uOMQrTMa8ddblvxsdSb1NIS5XuXNqtJqTCt/XAyo6OHbGM/6/JFyrklyPHDJ9 zhfgPo6/PA4xjR7/wuynmI= Received: from topperxin$126.com ( [54.151.229.47, 176.34.62.243] ) by ajax-webmail-wmsvr35 (Coremail) ; Tue, 5 May 2015 19:45:34 +0800 (CST) X-Originating-IP: [54.151.229.47, 176.34.62.243] Date: Tue, 5 May 2015 19:45:34 +0800 (CST) From: topperxin To: dev@dpdk.org X-Priority: 3 X-Mailer: Coremail Webmail Server Version SP_ntes V3.5 build 20150119(59087.7062) Copyright (c) 2002-2015 www.mailtech.cn 126com In-Reply-To: References: X-CM-CTRLDATA: vAEsX2Zvb3Rlcl9odG09ODg5Nzo4MQ== MIME-Version: 1.0 Message-ID: <30368dc.11f4d.14d23e539ac.Coremail.topperxin@126.com> X-CM-TRANSID: I8qowECp90JgrUhV7WzpAA--.715W X-CM-SenderInfo: xwrs1vhu0l0qqrswhudrp/1tbiTwrwDk1r-G30aQAAsR X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== Content-Type: text/plain; charset=GBK Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: [dpdk-dev] Error about dpdk ovs on AWS VM X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 May 2015 11:45:45 -0000 SGkgbGlzdAogICAgICAgICBJIGFtIGRvaW5nIHNvbWV0aGluZyBhYm91dCBjb21waWxlIERQREsg T1ZTIG9uIEFXUyBWTSwgd2hpbGUgSSBtZXQgc29tZSBwcm9ibGVtLAogICAgICAgICAxLiBJIGNh biBvbmx5IHNldCB0aGUgaHVnZXBhZ2VzaXplIHRvIDJNLCBub3QgdG8gMUcsIHRoZSByZWFzb24g aXMgdGhlIGNwdSBvbmx5IGhhcwogICAgICAgICAgICAgZmxhZyAncHNlJywgd2hpY2ggc3VwcG9y dCBvbmx5IDJNIGh1Z2UgcGFnZSBzaXplLCB3aGlsZSBub3QgaGFzIHBkcGUxZ2IsIHdoaWNoIHN1 cHBvcnQgMUcgaHVnZQogICAgICAgICAgICAgcGFnZSBzaXplLiBTbywgaWYgSSBvbmx5IHVzZSAy TSBodWdlIHBhZ2Ugc2l6ZSwgY2FuIEkgcnVubmluZyBEUERLIE9WUyA/CiAgICAgICAgIDIuIFdo ZW4gSSBydW4gdGhlIGNvbW1hbmQ6CiAgICAgICAgICAgICAgL3Zzd2l0Y2hkL292cy12c3dpdGNo ZCAtLWRwZGsgLWMgMHgxIC1uIDIgLS0gdW5peDokREJfU09DSyAtLXBpZGZpbGUgLS1kZXRhY2gK CiAgICAgICAgICAgICBJIHdpbGwgZ2V0IHNvbWUgRXJyb3IgbG9nLCBzdWNoIGFzIGJlbG93LCBh bmQgdGhlbiB3aGVuIEkgd2FudCB0byBicmlkZ2Ugb25lIG9mIHRoZSBjb250YWluZXJzIE5JQyBh cyBkcGRrIHR5cGUsIEkgd2lsbCBnZXQgZXJyb3IgYXMgYmVsb3c6Cj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICAgICAgICAgb3ZzLXZzY3RsOiBFcnJv ciBkZXRlY3RlZCB3aGlsZSBzZXR0aW5nIHVwICcxZWI5MTVkMjk1MjU0X2wnLiAgU2VlIG92cy12 c3dpdGNoZCBsb2cgZm9yIGRldGFpbHMuCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PSAgICAgICAgICAgIAoKV2hvIGNhbiBnaXZlIG1lIHNvbWUgYWR2aWNlIG9u IGhvdyB0byBkZWJ1ZyB0aGVzZSBlcnJvcnM/IHRoYW5rcyBhIGxvdC4KCj09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KMjAxNS0wNS0wNVQxMTozMjoyOVp8MDAwMDF8ZHBka3xJTkZPfE5vIGN1c2VfZGV2X25h bWUgcHJvdmlkZWQgLSBkZWZhdWx0aW5nIHRvIC9kZXYvdmhvc3QtbmV0CkVBTDogRGV0ZWN0ZWQg bGNvcmUgMCBhcyBjb3JlIDAgb24gc29ja2V0IDAKRUFMOiBEZXRlY3RlZCBsY29yZSAxIGFzIGNv cmUgMCBvbiBzb2NrZXQgMApFQUw6IFN1cHBvcnQgbWF4aW11bSAxMjggbG9naWNhbCBjb3JlKHMp IGJ5IGNvbmZpZ3VyYXRpb24uCkVBTDogRGV0ZWN0ZWQgMiBsY29yZShzKQpFQUw6IFZGSU8gbW9k dWxlcyBub3QgYWxsIGxvYWRlZCwgc2tpcCBWRklPIHN1cHBvcnQuLi4KRUFMOiBTZXR0aW5nIHVw IG1lbW9yeS4uLgpFQUw6IEFzayBhIHZpcnR1YWwgYXJlYSBvZiAweGUwMDAwMCBieXRlcwpFQUw6 IFZpcnR1YWwgYXJlYSBmb3VuZCBhdCAweDdmNjFkMzQwMDAwMCAoc2l6ZSA9IDB4ZTAwMDAwKQpF QUw6IEFzayBhIHZpcnR1YWwgYXJlYSBvZiAweDIwMDAwMCBieXRlcwpFQUw6IFZpcnR1YWwgYXJl YSBmb3VuZCBhdCAweDdmNjFkMzAwMDAwMCAoc2l6ZSA9IDB4MjAwMDAwKQpFQUw6IEFzayBhIHZp cnR1YWwgYXJlYSBvZiAweDNlYzAwMDAwIGJ5dGVzCkVBTDogVmlydHVhbCBhcmVhIGZvdW5kIGF0 IDB4N2Y2MTk0MjAwMDAwIChzaXplID0gMHgzZWMwMDAwMCkKRUFMOiBBc2sgYSB2aXJ0dWFsIGFy ZWEgb2YgMHgyMDAwMDAgYnl0ZXMKRUFMOiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQgMHg3ZjYxOTNl MDAwMDAgKHNpemUgPSAweDIwMDAwMCkKRUFMOiBBc2sgYSB2aXJ0dWFsIGFyZWEgb2YgMHgyMDAw MDAgYnl0ZXMKRUFMOiBWaXJ0dWFsIGFyZWEgZm91bmQgYXQgMHg3ZjYxOTNhMDAwMDAgKHNpemUg PSAweDIwMDAwMCkKRUFMOiBSZXF1ZXN0aW5nIDUxMiBwYWdlcyBvZiBzaXplIDJNQiBmcm9tIHNv Y2tldCAwCkVBTDogVFNDIGZyZXF1ZW5jeSBpcyB+Mjc5MzMyMyBLSHoKRUFMOiBXQVJOSU5HOiBj cHUgZmxhZ3MgY29uc3RhbnRfdHNjPXllcyBub25zdG9wX3RzYz1ubyAtPiB1c2luZyB1bnJlbGlh YmxlIGNsb2NrIGN5Y2xlcyAhCkVBTDogTWFzdGVyIGxjb3JlIDAgaXMgcmVhZHkgKHRpZD1kNjMy ZGI0MDtjcHVzZXQ9WzBdKQpFQUw6IFBDSSBkZXZpY2UgMDAwMDowMDowMy4wIG9uIE5VTUEgc29j a2V0IC0xCkVBTDogICBwcm9iZSBkcml2ZXI6IDgwODY6MTBlZCBydGVfaXhnYmV2Zl9wbWQKRUFM OiAgIFBDSSBtZW1vcnkgbWFwcGVkIGF0IDB4N2Y2MWQ0MjAwMDAwCkVBTDogICBQQ0kgbWVtb3J5 IG1hcHBlZCBhdCAweDdmNjFkNDIwNDAwMApQTUQ6IGV0aF9peGdiZXZmX2Rldl9pbml0KCk6IHBv cnQgMCB2ZW5kb3JJRD0weDgwODYgZGV2aWNlSUQ9MHgxMGVkIG1hYy50eXBlPWl4Z2JlX21hY184 MjU5OV92ZgpFQUw6IFBDSSBkZXZpY2UgMDAwMDowMDowNC4wIG9uIE5VTUEgc29ja2V0IC0xCkVB TDogICBwcm9iZSBkcml2ZXI6IDgwODY6MTBlZCBydGVfaXhnYmV2Zl9wbWQKRUFMOiAgIE5vdCBt YW5hZ2VkIGJ5IGEgc3VwcG9ydGVkIGtlcm5lbCBkcml2ZXIsIHNraXBwZWQKWm9uZSAwOiBuYW1l OjxNQUxMT0NfUzBfSEVBUF8wPiwgcGh5czoweDM3MDAwMDAwLCBsZW46MHhiMDAwMDAsIHZpcnQ6 MHg3ZjYxZDM0MDAwMDAsIHNvY2tldF9pZDowLCBmbGFnczowClpvbmUgMTogbmFtZTo8UkdfTVBf bG9nX2hpc3Rvcnk+LCBwaHlzOjB4YTc4MDAwMDAsIGxlbjoweDIwODAsIHZpcnQ6MHg3ZjYxZDMw MDAwMDAsIHNvY2tldF9pZDowLCBmbGFnczowClpvbmUgMjogbmFtZTo8TVBfbG9nX2hpc3Rvcnk+ LCBwaHlzOjB4MzdiMDAwMDAsIGxlbjoweDI4YTBjMCwgdmlydDoweDdmNjFkM2YwMDAwMCwgc29j a2V0X2lkOjAsIGZsYWdzOjAKWm9uZSAzOiBuYW1lOjxydGVfZXRoX2Rldl9kYXRhPiwgcGh5czow eDM3ZDhhMGMwLCBsZW46MHgxZjQwMCwgdmlydDoweDdmNjFkNDE4YTBjMCwgc29ja2V0X2lkOjAs IGZsYWdzOjAKMjAxNS0wNS0wNVQxMTozMjozMFp8MDAwMDJ8b3ZzX251bWF8SU5GT3xEaXNjb3Zl cmVkIDIgQ1BVIGNvcmVzIG9uIE5VTUEgbm9kZSAwCjIwMTUtMDUtMDVUMTE6MzI6MzBafDAwMDAz fG92c19udW1hfElORk98RGlzY292ZXJlZCAxIE5VTUEgbm9kZXMgYW5kIDIgQ1BVIGNvcmVzCjIw MTUtMDUtMDVUMTE6MzI6MzBafDAwMDA0fHJlY29ubmVjdHxJTkZPfHVuaXg6L3Vzci9sb2NhbC92 YXIvcnVuL29wZW52c3dpdGNoL2RiLnNvY2s6IGNvbm5lY3RpbmcuLi4KVkhPU1RfQ09ORklHOiBj aGFyIGRldmljZSAvZGV2L3Zob3N0LW5ldCBhbHJlYWR5IGV4aXN0cwoyMDE1LTA1LTA1VDExOjMy OjMwWnwwMDAwNXxkcGRrfEVSUnxDVVNFIGRldmljZSBzZXR1cCBmYWlsdXJlLgoyMDE1LTA1LTA1 VDExOjMyOjMwWnwwMDAwNnxuZXRkZXZ8RVJSfGZhaWxlZCB0byBpbml0aWFsaXplIGRwZGt2aG9z dCBuZXR3b3JrIGRldmljZSBjbGFzczogVW5rbm93biBlcnJvciAtMQoyMDE1LTA1LTA1VDExOjMy OjMwWnwwMDAwN3xyZWNvbm5lY3R8SU5GT3x1bml4Oi91c3IvbG9jYWwvdmFyL3J1bi9vcGVudnN3 aXRjaC9kYi5zb2NrOiBjb25uZWN0ZWQKMjAxNS0wNS0wNVQxMTozMjozMFp8MDAwMDh8b2Zwcm90 b19kcGlmfElORk98bmV0ZGV2QG92cy1uZXRkZXY6IERhdGFwYXRoIHN1cHBvcnRzIHJlY2lyY3Vs YXRpb24KMjAxNS0wNS0wNVQxMTozMjozMFp8MDAwMDl8b2Zwcm90b19kcGlmfElORk98bmV0ZGV2 QG92cy1uZXRkZXY6IE1QTFMgbGFiZWwgc3RhY2sgbGVuZ3RoIHByb2JlZCBhcyAzCjIwMTUtMDUt MDVUMTE6MzI6MzBafDAwMDEwfG9mcHJvdG9fZHBpZnxJTkZPfG5ldGRldkBvdnMtbmV0ZGV2OiBE YXRhcGF0aCBzdXBwb3J0cyB1bmlxdWUgZmxvdyBpZHMKMjAxNS0wNS0wNVQxMTozMjozMFp8MDAw MTF8YnJpZGdlfElORk98YnJpZGdlIGJyMDogYWRkZWQgaW50ZXJmYWNlIGJyMCBvbiBwb3J0IDY1 NTM0CjIwMTUtMDUtMDVUMTE6MzI6MzBafDAwMDEyfG5ldGRldl9saW51eHxXQVJOfGJyMDogb2J0 YWluaW5nIG5ldGRldiBzdGF0cyB2aWEgdnBvcnQgZmFpbGVkIChObyBzdWNoIGRldmljZSkKUE1E OiBpeGdiZXZmX2Rldl9jb25maWd1cmUoKTogQ29uZmlndXJlZCBWaXJ0dWFsIEZ1bmN0aW9uIHBv cnQgaWQ6IDAKUE1EOiBpeGdiZXZmX2Rldl9jb25maWd1cmUoKTogVkYgY2FuJ3QgZGlzYWJsZSBI VyBDUkMgU3RyaXAKUE1EOiBpeGdiZV9kZXZfdHhfcXVldWVfc2V0dXAoKTogc3dfcmluZz0weDdm NjFkM2VmNDAwMCBod19yaW5nPTB4N2Y2MWQ0MWE5NTAwIGRtYV9hZGRyPTB4MzdkYTk1MDAKUE1E OiBpeGdiZV9zZXRfdHhfZnVuY3Rpb24oKTogVXNpbmcgc2ltcGxlIHR4IGNvZGUgcGF0aApQTUQ6 IGl4Z2JlX3NldF90eF9mdW5jdGlvbigpOiBWZWN0b3IgdHggZW5hYmxlZC4KUE1EOiBjaGVja19y eF9idXJzdF9idWxrX2FsbG9jX3ByZWNvbmRpdGlvbnMoKTogUnggQnVyc3QgQnVsayBBbGxvYyBQ cmVjb25kaXRpb25zOiByeHEtPnJ4X2ZyZWVfdGhyZXNoPTAsIFJURV9QTURfSVhHQkVfUlhfTUFY X0JVUlNUPTMyClBNRDogaXhnYmVfZGV2X3J4X3F1ZXVlX3NldHVwKCk6IHF1ZXVlWzBdIGRvZXNu J3QgbWVldCBSeCBCdWxrIEFsbG9jIHByZWNvbmRpdGlvbnMgLSBjYW5jZWxpbmcgdGhlIGZlYXR1 cmUgZm9yIHRoZSB3aG9sZSBwb3J0WzBdClBNRDogaXhnYmVfZGV2X3J4X3F1ZXVlX3NldHVwKCk6 IHN3X3Jpbmc9MHg3ZjYxZDNlZWZjODAgc3dfcnNjX3Jpbmc9KG5pbCkgaHdfcmluZz0weDdmNjFk NDFiOTUwMCBkbWFfYWRkcj0weDM3ZGI5NTAwClBNRDogaXhnYmV2Zl9kZXZfcnhfaW5pdCgpOiBm b3JjaW5nIHNjYXR0ZXIgbW9kZQoyMDE1LTA1LTA1VDExOjMyOjMwWnwwMDAxM3xkcGRrfElORk98 UG9ydCAwOiAwNjozMzphZTo5ODo4Yzo4YwpQTUQ6IGl4Z2JldmZfZGV2X2NvbmZpZ3VyZSgpOiBD b25maWd1cmVkIFZpcnR1YWwgRnVuY3Rpb24gcG9ydCBpZDogMApQTUQ6IGl4Z2JldmZfZGV2X2Nv bmZpZ3VyZSgpOiBWRiBjYW4ndCBkaXNhYmxlIEhXIENSQyBTdHJpcApQTUQ6IGl4Z2JlX2Rldl90 eF9xdWV1ZV9zZXR1cCgpOiBzd19yaW5nPTB4N2Y2MWQzZWY0MTAwIGh3X3Jpbmc9MHg3ZjYxZDQx YTk1MDAgZG1hX2FkZHI9MHgzN2RhOTUwMApQTUQ6IGl4Z2JlX3NldF90eF9mdW5jdGlvbigpOiBV c2luZyBzaW1wbGUgdHggY29kZSBwYXRoClBNRDogaXhnYmVfc2V0X3R4X2Z1bmN0aW9uKCk6IFZl Y3RvciB0eCBlbmFibGVkLgpQTUQ6IGl4Z2JlX2Rldl90eF9xdWV1ZV9zZXR1cCgpOiBzd19yaW5n PTB4N2Y2MWQzZWU2M2MwIGh3X3Jpbmc9MHg3ZjYxZDQxYzk1ODAgZG1hX2FkZHI9MHgzN2RjOTU4 MApQTUQ6IGl4Z2JlX3NldF90eF9mdW5jdGlvbigpOiBVc2luZyBzaW1wbGUgdHggY29kZSBwYXRo ClBNRDogaXhnYmVfc2V0X3R4X2Z1bmN0aW9uKCk6IFZlY3RvciB0eCBlbmFibGVkLgpQTUQ6IGNo ZWNrX3J4X2J1cnN0X2J1bGtfYWxsb2NfcHJlY29uZGl0aW9ucygpOiBSeCBCdXJzdCBCdWxrIEFs bG9jIFByZWNvbmRpdGlvbnM6IHJ4cS0+cnhfZnJlZV90aHJlc2g9MCwgUlRFX1BNRF9JWEdCRV9S WF9NQVhfQlVSU1Q9MzIKUE1EOiBpeGdiZV9kZXZfcnhfcXVldWVfc2V0dXAoKTogcXVldWVbMF0g ZG9lc24ndCBtZWV0IFJ4IEJ1bGsgQWxsb2MgcHJlY29uZGl0aW9ucyAtIGNhbmNlbGluZyB0aGUg ZmVhdHVyZSBmb3IgdGhlIHdob2xlIHBvcnRbMF0KUE1EOiBpeGdiZV9kZXZfcnhfcXVldWVfc2V0 dXAoKTogc3dfcmluZz0weDdmNjFkM2VlZmZjMCBzd19yc2NfcmluZz0obmlsKSBod19yaW5nPTB4 N2Y2MWQ0MWI5NTAwIGRtYV9hZGRyPTB4MzdkYjk1MDAKUE1EOiBpeGdiZXZmX2Rldl9yeF9pbml0 KCk6IGZvcmNpbmcgc2NhdHRlciBtb2RlCjIwMTUtMDUtMDVUMTE6MzI6MzBafDAwMDE0fGRwZGt8 SU5GT3xQb3J0IDA6IDA2OjMzOmFlOjk4OjhjOjhjCjIwMTUtMDUtMDVUMTE6MzI6MzBafDAwMDE1 fGRwaWZfbmV0ZGV2fElORk98Q3JlYXRlZCAxIHBtZCB0aHJlYWRzIG9uIG51bWEgbm9kZSAwCjIw MTUtMDUtMDVUMTE6MzI6MzBafDAwMDE2fGJyaWRnZXxJTkZPfGJyaWRnZSBicjA6IGFkZGVkIGlu dGVyZmFjZSBkcGRrMCBvbiBwb3J0IDEKMjAxNS0wNS0wNVQxMTozMjozMFp8MDAwMTd8YnJpZGdl fFdBUk58Y291bGQgbm90IG9wZW4gbmV0d29yayBkZXZpY2UgYTMxNTJiMDY3Zjg3NF9sIChObyBz dWNoIGRldmljZSkKMjAxNS0wNS0wNVQxMTozMjozMFp8MDAwMTh8YnJpZGdlfElORk98YnJpZGdl IGJyMDogdXNpbmcgZGF0YXBhdGggSUQgMDAwMDZlNzNiZTViN2Q0MQoyMDE1LTA1LTA1VDExOjMy OjMwWnwwMDAxOXxjb25ubWdyfElORk98YnIwOiBhZGRlZCBzZXJ2aWNlIGNvbnRyb2xsZXIgInB1 bml4Oi91c3IvbG9jYWwvdmFyL3J1bi9vcGVudnN3aXRjaC9icjAubWdtdCIKMjAxNS0wNS0wNVQx MTozMjozMFp8MDAwMjB8ZHBpZl9uZXRkZXZ8SU5GT3xDcmVhdGVkIDEgcG1kIHRocmVhZHMgb24g bnVtYSBub2RlIDAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICAgICAgICAKCgoKCgoKCgoKQXQg MjAxNS0wNS0wNSAxODo1Nzo1MiwgZGV2LXJlcXVlc3RAZHBkay5vcmcgd3JvdGU6Cj5XZWxjb21l IHRvIHRoZSBkZXZAZHBkay5vcmcgbWFpbGluZyBsaXN0IQo+Cj5UbyBwb3N0IHRvIHRoaXMgbGlz dCwgc2VuZCB5b3VyIG1lc3NhZ2UgdG86Cj4KPiAgZGV2QGRwZGsub3JnCj4KPkdlbmVyYWwgaW5m b3JtYXRpb24gYWJvdXQgdGhlIG1haWxpbmcgbGlzdCBpcyBhdDoKPgo+ICBodHRwOi8vZHBkay5v cmcvbWwvbGlzdGluZm8vZGV2Cj4KPklmIHlvdSBldmVyIHdhbnQgdG8gdW5zdWJzY3JpYmUgb3Ig Y2hhbmdlIHlvdXIgb3B0aW9ucyAoZWcsIHN3aXRjaCB0bwo+b3IgZnJvbSBkaWdlc3QgbW9kZSwg Y2hhbmdlIHlvdXIgcGFzc3dvcmQsIGV0Yy4pLCB2aXNpdCB5b3VyCj5zdWJzY3JpcHRpb24gcGFn ZSBhdDoKPgo+ICBodHRwOi8vZHBkay5vcmcvbWwvb3B0aW9ucy9kZXYvdG9wcGVyeGluJTQwMTI2 LmNvbQo+Cj5Zb3UgY2FuIGFsc28gbWFrZSBzdWNoIGFkanVzdG1lbnRzIHZpYSBlbWFpbCBieSBz ZW5kaW5nIGEgbWVzc2FnZSB0bzoKPgo+ICBkZXYtcmVxdWVzdEBkcGRrLm9yZwo+Cj53aXRoIHRo ZSB3b3JkIGBoZWxwJyBpbiB0aGUgc3ViamVjdCBvciBib2R5IChkb24ndCBpbmNsdWRlIHRoZQo+ cXVvdGVzKSwgYW5kIHlvdSB3aWxsIGdldCBiYWNrIGEgbWVzc2FnZSB3aXRoIGluc3RydWN0aW9u cy4KPgo+WW91IG11c3Qga25vdyB5b3VyIHBhc3N3b3JkIHRvIGNoYW5nZSB5b3VyIG9wdGlvbnMg KGluY2x1ZGluZyBjaGFuZ2luZwo+dGhlIHBhc3N3b3JkLCBpdHNlbGYpIG9yIHRvIHVuc3Vic2Ny aWJlIHdpdGhvdXQgY29uZmlybWF0aW9uLiAgSXQgaXM6Cj4KPiAgbmx4bG92ZXd4Cj4KPk5vcm1h bGx5LCBNYWlsbWFuIHdpbGwgcmVtaW5kIHlvdSBvZiB5b3VyIGRwZGsub3JnIG1haWxpbmcgbGlz dAo+cGFzc3dvcmRzIG9uY2UgZXZlcnkgbW9udGgsIGFsdGhvdWdoIHlvdSBjYW4gZGlzYWJsZSB0 aGlzIGlmIHlvdQo+cHJlZmVyLiAgVGhpcyByZW1pbmRlciB3aWxsIGFsc28gaW5jbHVkZSBpbnN0 cnVjdGlvbnMgb24gaG93IHRvCj51bnN1YnNjcmliZSBvciBjaGFuZ2UgeW91ciBhY2NvdW50IG9w dGlvbnMuICBUaGVyZSBpcyBhbHNvIGEgYnV0dG9uIG9uCj55b3VyIG9wdGlvbnMgcGFnZSB0aGF0 IHdpbGwgZW1haWwgeW91ciBjdXJyZW50IHBhc3N3b3JkIHRvIHlvdS4K >From pdelarax@ecsmtp.ir.intel.com Tue May 5 14:35:23 2015 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 87FA1DE6 for ; Tue, 5 May 2015 14:35:22 +0200 (CEST) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga103.jf.intel.com with ESMTP; 05 May 2015 05:35:21 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,372,1427785200"; d="scan'208";a="705492162" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by fmsmga001.fm.intel.com with ESMTP; 05 May 2015 05:35:21 -0700 Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com [10.237.217.46]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id t45CZJu4010398 for ; Tue, 5 May 2015 13:35:19 +0100 Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1]) by sivswdev02.ir.intel.com with ESMTP id t45CZJAH022278 for ; Tue, 5 May 2015 13:35:19 +0100 Received: (from pdelarax@localhost) by sivswdev02.ir.intel.com with id t45CZJ6I022274 for dev@dpdk.org; Tue, 5 May 2015 13:35:19 +0100 From: Pablo de Lara To: dev@dpdk.org Date: Tue, 5 May 2015 13:35:19 +0100 Message-Id: <1430829319-22242-1-git-send-email-pablo.de.lara.guarch@intel.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1430775963-29444-1-git-send-email-pablo.de.lara.guarch@intel.com> References: <1430775963-29444-1-git-send-email-pablo.de.lara.guarch@intel.com> Subject: [dpdk-dev] [PATCH v2] kni: fix compilation issue in KNI vhost on kernel 3.19/4.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 May 2015 12:35:23 -0000 Due to commit c0371da6 in kernel 3.19, which removed msg_iov and msg_iovlen from struct msghdr, DPDK would not build. Also, functions memcpy_toiovecend and memcpy_fromiovecend were removed in commits ba7438ae and 57dd8a07, being substituted by copy_from_iter and copy_to_iter. This patch makes use of struct iov_iter, which has references to msg_iov and msg_iovln, and makes use of copy_from_iter and copy_to_iter. Reported-by: Thomas Monjalon Signed-off-by: Pablo de Lara --- lib/librte_eal/linuxapp/kni/compat.h | 4 +++ lib/librte_eal/linuxapp/kni/kni_vhost.c | 33 +++++++++++++++++++++++------- 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/lib/librte_eal/linuxapp/kni/compat.h b/lib/librte_eal/linuxapp/kni/compat.h index 1313523..1ad22ba 100644 --- a/lib/librte_eal/linuxapp/kni/compat.h +++ b/lib/librte_eal/linuxapp/kni/compat.h @@ -19,3 +19,7 @@ #define sk_sleep(s) (s)->sk_sleep #endif /* < 2.6.35 */ + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,0) +#define HAVE_IOV_ITER_MSGHDR +#endif diff --git a/lib/librte_eal/linuxapp/kni/kni_vhost.c b/lib/librte_eal/linuxapp/kni/kni_vhost.c index 7141f83..a35fa92 100644 --- a/lib/librte_eal/linuxapp/kni/kni_vhost.c +++ b/lib/librte_eal/linuxapp/kni/kni_vhost.c @@ -76,7 +76,7 @@ static struct proto kni_raw_proto = { }; static inline int -kni_vhost_net_tx(struct kni_dev *kni, struct iovec *iov, +kni_vhost_net_tx(struct kni_dev *kni, struct msghdr *m, unsigned offset, unsigned len) { struct rte_kni_mbuf *pkt_kva = NULL; @@ -84,7 +84,11 @@ kni_vhost_net_tx(struct kni_dev *kni, struct iovec *iov, int ret; KNI_DBG_TX("tx offset=%d, len=%d, iovlen=%d\n", - offset, len, (int)iov->iov_len); +#ifdef HAVE_IOV_ITER_MSGHDR + offset, len, (int)m->msg_iter.iov->iov_len); +#else + offset, len, (int)m->iov->iov_len); +#endif /** * Check if it has at least one free entry in tx_q and @@ -108,7 +112,12 @@ kni_vhost_net_tx(struct kni_dev *kni, struct iovec *iov, data_kva = pkt_kva->buf_addr + pkt_kva->data_off - kni->mbuf_va + kni->mbuf_kva; - memcpy_fromiovecend(data_kva, iov, offset, len); +#ifdef HAVE_IOV_ITER_MSGHDR + copy_from_iter(data_kva, len, &m->msg_iter); +#else + memcpy_fromiovecend(data_kva, m->iov, offset, len); +#endif + if (unlikely(len < ETH_ZLEN)) { memset(data_kva + len, 0, ETH_ZLEN - len); len = ETH_ZLEN; @@ -143,7 +152,7 @@ drop: } static inline int -kni_vhost_net_rx(struct kni_dev *kni, struct iovec *iov, +kni_vhost_net_rx(struct kni_dev *kni, struct msghdr *m, unsigned offset, unsigned len) { uint32_t pkt_len; @@ -177,10 +186,18 @@ kni_vhost_net_rx(struct kni_dev *kni, struct iovec *iov, goto drop; KNI_DBG_RX("rx offset=%d, len=%d, pkt_len=%d, iovlen=%d\n", - offset, len, pkt_len, (int)iov->iov_len); +#ifdef HAVE_IOV_ITER_MSGHDR + offset, len, pkt_len, (int)m->msg_iter.iov->iov_len); +#else + offset, len, pkt_len, (int)m->iov->iov_len); +#endif data_kva = kva->buf_addr + kva->data_off - kni->mbuf_va + kni->mbuf_kva; - if (unlikely(memcpy_toiovecend(iov, data_kva, offset, pkt_len))) +#ifdef HAVE_IOV_ITER_MSGHDR + if (unlikely(copy_to_iter(data_kva, pkt_len, &m->msg_iter))) +#else + if (unlikely(memcpy_toiovecend(m->iov, data_kva, offset, pkt_len))) +#endif goto drop; /* Update statistics */ @@ -362,7 +379,7 @@ kni_sock_sndmsg(struct kiocb *iocb, struct socket *sock, if (unlikely(len < ETH_HLEN + q->vnet_hdr_sz)) return -EINVAL; - return kni_vhost_net_tx(q->kni, m->msg_iov, vnet_hdr_len, len); + return kni_vhost_net_tx(q->kni, m, vnet_hdr_len, len); } static int @@ -391,7 +408,7 @@ kni_sock_rcvmsg(struct kiocb *iocb, struct socket *sock, #endif if (unlikely(0 == (pkt_len = kni_vhost_net_rx(q->kni, - m->msg_iov, vnet_hdr_len, len)))) + m, vnet_hdr_len, len)))) return 0; #ifdef RTE_KNI_VHOST_VNET_HDR_EN -- 1.7.4.1