From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 42675A2EEB for ; Fri, 13 Sep 2019 17:01:46 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id E5A091F032; Fri, 13 Sep 2019 17:01:45 +0200 (CEST) Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by dpdk.org (Postfix) with ESMTP id E686A1F02F for ; Fri, 13 Sep 2019 17:01:43 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 5E52F21E56; Fri, 13 Sep 2019 11:01:40 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Fri, 13 Sep 2019 11:01:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=mesmtp; bh=ORvUVuZTXy2q1cgPLNT3oHQzWKo0zr1D0Dyt12OTIXI=; b=k7utR6z5jzul eM7GCUiosw0jcJUsxqQAs90xhGULlKPHT8PbRQM2CX+k94rF2cNMwOC13HDVddoC Cr0Av7q98n8gwrjZAVwJa8FvLpWrU2c9GIHrgOFgxu0K5vtUNw09B7abKZA+IKS4 4jOcN2MBA6327/TeW3LqSQcN7toDHKw= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm3; bh=ORvUVuZTXy2q1cgPLNT3oHQzWKo0zr1D0Dyt12OTI XI=; b=f9Sl3gIhUo0AjVxcyrdrJOo6xyHKBBp4PDM9ODc8AMDDWwGneixGgp8zF 6OJq1fH8GWsCoZekwkcdp/izYLGpFkBmG8dFbfD9jTXlwTBOd5RTtuaTmojqHNI9 6Qj/9r3WAULlC/yQJdTbLf6Nbd50SrakAeq9r9sKtORlXJDf8t7nZah0FZSLNzWv 86/WWyXh9FAW+Yyb0FSj2zQpnvv0utHNYsc8gE9RZV3Os6svZn1BQzQ0bXTwVP6S sjexBeUFJjbDuXRvVc1/95SyMaJCVdshZPL5N/RN1piZ/ZCBOo8H9SLJRSh29DMg 5+ssFmqpvsaO/xTvBgx7/mqAfhImg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedufedrtdejgdekfecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucfkph epjeejrddufeegrddvtdefrddukeegnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhho mhgrshesmhhonhhjrghlohhnrdhnvghtnecuvehluhhsthgvrhfuihiivgeptd X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id C492A8005A; Fri, 13 Sep 2019 11:01:38 -0400 (EDT) From: Thomas Monjalon To: Aaron Conole Cc: dev@dpdk.org, David Marchand , Jeff Guo Date: Fri, 13 Sep 2019 17:01:35 +0200 Message-ID: <1822498.zNlbTz1IHE@xps> In-Reply-To: References: <20190808173835.5949-1-aconole@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH] test/interrupt: account for race with callback X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 09/08/2019 11:18, David Marchand: > On Thu, Aug 8, 2019 at 7:38 PM Aaron Conole wrote: > > > > Because the eal interrupt framework can race when invoking the callback > > and a separate unregister call, the test needs to accommodate the chance > > that the two collide. Do this by checking the return value of unregister > > against the race-condition flag (EAGAIN). > > > > Fixes: f1a6c22424ce ("app/test: update interrupts test") > > Not too sure about this tag, but anyway, this is old enough to apply > to every stable releases we have. > Cc: stable@dpdk.org ? > > > Signed-off-by: Aaron Conole > > --- > > NOTE: it's difficult to reproduce this race. I tried a bit, but have > > only seen it sporadically. In Travis environment, the CPU > > resource can be very limited and this test is quite racy. > > Managed to reproduce it: > > # time (log=/tmp/$$.log; while true; do echo interrupt_autotest > |taskset -c 0-1 ./build-gcc-static/app/test/dpdk-test -l 0-1 >$log > 2>&1; grep -q 'Test OK' $log || break; done; cat $log; rm -f $log) > EAL: Detected 8 lcore(s) > EAL: Detected 1 NUMA nodes > EAL: Multi-process socket /var/run/dpdk/rte/mp_socket > EAL: Selected IOVA mode 'PA' > EAL: No available hugepages reported in hugepages-1048576kB > EAL: Probing VFIO support... > EAL: PCI device 0000:00:1f.6 on NUMA socket -1 > EAL: Invalid NUMA socket, default to 0 > EAL: probe driver: 8086:15d7 net_e1000_em > APP: HPET is not enabled, using TSC as default timer > RTE>>interrupt_autotest > Check unknown valid interrupt full path > Check valid UIO interrupt full path > Check valid device event interrupt full path > count=-11 Resource temporarily unavailable > failure occurred during checking valid device event interrupt full path > Clearing for interrupt tests > Test Failed > RTE>> > real 0m38.081s > user 0m35.836s > sys 0m2.171s > > With this patch, my loop has been running for more than 10 minutes now. > Reviewed-by: David Marchand Applied, thanks