From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-sg2apc01on0090.outbound.protection.outlook.com [104.47.125.90]) by dpdk.org (Postfix) with ESMTP id 01737379E for ; Mon, 28 Sep 2015 07:51:15 +0200 (CEST) Received: from SIXPR0301MB1258.apcprd03.prod.outlook.com (10.162.179.15) by SIXPR0301MB1260.apcprd03.prod.outlook.com (10.162.179.151) with Microsoft SMTP Server (TLS) id 15.1.280.20; Mon, 28 Sep 2015 05:51:11 +0000 Received: from SIXPR0301MB1258.apcprd03.prod.outlook.com ([10.162.179.15]) by SIXPR0301MB1258.apcprd03.prod.outlook.com ([10.162.179.15]) with mapi id 15.01.0280.017; Mon, 28 Sep 2015 05:51:11 +0000 From: "Kirill A. Korinsky" To: "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH] Fix VMware emulated e1000 doesn't support INTX_DISABLE flag Thread-Index: AQHQ+W1TDkhydYX6C06V1K2t7ZcSMp5RcH6A Date: Mon, 28 Sep 2015 05:51:11 +0000 Message-ID: <5C5B8A9A-609F-45D6-8C82-4643F88D702E@korins.ky> References: <1443343866-363-1-git-send-email-kirill@korins.ky> <20150927144157.77708f7c@urahara> In-Reply-To: <20150927144157.77708f7c@urahara> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=kirill@korins.ky; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [31.146.93.215] x-microsoft-exchange-diagnostics: 1; SIXPR0301MB1260; 5:jqP8dqFvhVSZpoJXHkQzrCq+dRKQfapnAX5i5oBn1k/Ec3WxQxij/u8CnzbBs4+dFd/gyDtVj2VkcOIVhvNozTksyMGax7z3+mkbTGj6PAphfhIf4dQsMaTcYL41gD4BLBTFM6BVfyQyG/UCFt9nvQ==; 24:ifHEoRtVpNIx24j51SP0jioJVtY0/3KGZCl+CS+4x/RK9sri0x2Phhp+am5ivPFBjz2wIBIoIBrWtkpDuJfRvEIofz8gtZfI7HO9puZ9TZI=; 20:xvaXz+brqjlTCsY7svLErGkXWMyErfnfm6CSyLvrjYNuJFgZAv7OQZuT1ONxjOA58nMZ2gZwPOdtPTXnwXI7Ew== x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SIXPR0301MB1260; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(3002001); SRVR:SIXPR0301MB1260; BCL:0; PCL:0; RULEID:; SRVR:SIXPR0301MB1260; x-forefront-prvs: 0713BC207F x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(24454002)(199003)(189002)(2501003)(97736004)(19580405001)(19580395003)(33656002)(106116001)(2950100001)(2900100001)(105586002)(81156007)(106356001)(4001540100001)(5001830100001)(11100500001)(5001860100001)(86362001)(92566002)(10400500002)(77156002)(5002640100001)(450100001)(62966003)(74482002)(101416001)(46102003)(54356999)(40100003)(122556002)(50986999)(2351001)(5001960100002)(76176999)(189998001)(64706001)(36756003)(107886002)(110136002)(82746002)(83716003)(5007970100001)(102836002)(87936001)(77096005)(68736005)(5004730100002)(66066001)(104396002); DIR:OUT; SFP:1102; SCL:1; SRVR:SIXPR0301MB1260; H:SIXPR0301MB1258.apcprd03.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:3; MX:3; LANG:en; received-spf: None (protection.outlook.com: korins.ky does not designate permitted sender hosts) spamdiagnosticoutput: 1:23 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-ID: <60037F22775DFB45A7640BBCE7CB3A1A@apcprd03.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: korins.ky X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Sep 2015 05:51:11.0021 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 18cd0c33-4026-4f0a-b6e1-dedb5b60d7e6 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SIXPR0301MB1260 Subject: Re: [dpdk-dev] [PATCH] Fix VMware emulated e1000 doesn't support INTX_DISABLE flag 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: Mon, 28 Sep 2015 05:51:16 -0000 > On 28 Sep 2015, at 01:41, Stephen Hemminger = wrote: >=20 > On Sun, 27 Sep 2015 12:51:06 +0400 > "Kirill A. Korinsky" wrote: >=20 >> When you try to run any DPDK-app in VMWare with e1000/82545EM NIC >> you have a lot of lines like: >>=20 >> EAL: Error reading from file descriptor 9: Input/output error >>=20 >> The reason of this error is bad INTX emulation in VMWare >> and pci_intx_mask_supported return false every time. >> --- >> lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >>=20 >> diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/lib/librte_eal/= linuxapp/igb_uio/igb_uio.c >> index 865a276..c85f7e5 100644 >> --- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c >> +++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c >> @@ -36,6 +36,7 @@ >> #ifdef CONFIG_XEN_DOM0 >> #include >> #endif >> +#include >> #include >>=20 >> #include "compat.h" >> @@ -508,7 +509,8 @@ igbuio_pci_probe(struct pci_dev *dev, const struct p= ci_device_id *id) >> } >> /* fall back to INTX */ >> case RTE_INTR_MODE_LEGACY: >> - if (pci_intx_mask_supported(dev)) { >> + /* VMware emulated e1000 doesn't support INTX_DISABLE flag */ >> + if (pci_intx_mask_supported(dev) || x86_hyper =3D=3D &x86_hyper_vmwar= e) { >> dev_dbg(&dev->dev, "using INTX"); >> udev->info.irq_flags =3D IRQF_SHARED; >> udev->info.irq =3D dev->irq; >=20 > I don't think driver should be expecting INTx to work on VMware. > If kernel test fails, it means masking is broken (in VMware). >=20 >=20 > It is better for driver (E1000 PMD) to report that Link state interrupt d= oes > not work (if IRQ setup fails). Then application can test if LSC irq works > and not enable it. Sounds reasonable. Thanks!=20