From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 9C2FD459C3;
	Wed, 18 Sep 2024 08:43:50 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 8348C4069F;
	Wed, 18 Sep 2024 08:43:50 +0200 (CEST)
Received: from szxga04-in.huawei.com (szxga04-in.huawei.com [45.249.212.190])
 by mails.dpdk.org (Postfix) with ESMTP id 8AA5C4029B
 for <dev@dpdk.org>; Wed, 18 Sep 2024 08:43:36 +0200 (CEST)
Received: from mail.maildlp.com (unknown [172.19.88.163])
 by szxga04-in.huawei.com (SkyGuard) with ESMTP id 4X7pxN6WCWz2Dc7H;
 Wed, 18 Sep 2024 14:42:48 +0800 (CST)
Received: from dggpeml500024.china.huawei.com (unknown [7.185.36.10])
 by mail.maildlp.com (Postfix) with ESMTPS id 0E83D18001B;
 Wed, 18 Sep 2024 14:43:27 +0800 (CST)
Received: from [10.67.121.161] (10.67.121.161) by
 dggpeml500024.china.huawei.com (7.185.36.10) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.39; Wed, 18 Sep 2024 14:43:26 +0800
Message-ID: <9454e25c-a861-4e20-b9fc-d451187aebf0@huawei.com>
Date: Wed, 18 Sep 2024 14:43:26 +0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH] examples/eventdev: fix segment fault with generic pipeline
To: Jerin Jacob <jerinjacobk@gmail.com>
CC: <thomas@monjalon.net>, <dev@dpdk.org>, <harry.van.haaren@intel.com>,
 <wangchenxingyu@huawei.com>
References: <20240801111120.5380-1-fengchengwen@huawei.com>
 <CALBAE1MpxdZosngLepBFdKxsDqjBNanR4VEzS-=fPVZ1CT54oQ@mail.gmail.com>
Content-Language: en-US
From: fengchengwen <fengchengwen@huawei.com>
In-Reply-To: <CALBAE1MpxdZosngLepBFdKxsDqjBNanR4VEzS-=fPVZ1CT54oQ@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-Originating-IP: [10.67.121.161]
X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To
 dggpeml500024.china.huawei.com (7.185.36.10)
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

Hi Jerin,

Thanks for your review, v2 had fix it and sent, please review.


On 2024/9/17 23:50, Jerin Jacob wrote:
> On Thu, Aug 1, 2024 at 4:54 PM Chengwen Feng <fengchengwen@huawei.com> wrote:
>>
>> There was a segmentation fault when executing eventdev_pipeline with
>> command [1] with ConnectX-5 NIC card:
>>
>> 0x000000000079208c in rte_eth_tx_buffer (tx_pkt=0x16f8ed300, buffer=0x100, queue_id=11, port_id=0) at ../lib/ethdev/rte_ethdev.h:6636
>> txa_service_tx (txa=0x17b19d080, ev=0xffffffffe500, n=4) at ../lib/eventdev/rte_event_eth_tx_adapter.c:631
>> 0x0000000000792234 in txa_service_func (args=0x17b19d080) at ../lib/eventdev/rte_event_eth_tx_adapter.c:666
>> 0x00000000008b0784 in service_runner_do_callback (s=0x17fffe100, cs=0x17ffb5f80, service_idx=2) at ../lib/eal/common/rte_service.c:405
>> 0x00000000008b0ad8 in service_run (i=2, cs=0x17ffb5f80, service_mask=18446744073709551615, s=0x17fffe100, serialize_mt_unsafe=0)
>>     at ../lib/eal/common/rte_service.c:441
>> 0x00000000008b0c68 in rte_service_run_iter_on_app_lcore (id=2, serialize_mt_unsafe=0) at ../lib/eal/common/rte_service.c:477
>> 0x000000000057bcc4 in schedule_devices (lcore_id=0) at ../examples/eventdev_pipeline/pipeline_common.h:138
>> 0x000000000057ca94 in worker_generic_burst (arg=0x17b131e80) at ../examples/eventdev_pipeline/pipeline_worker_generic.c:83
>> 0x00000000005794a8 in main (argc=11, argv=0xfffffffff470) at ../examples/eventdev_pipeline/main.c:449
>>
>> The root cause is that the queue_id (11) is invalid, the queue_id comes
>> from mbuf.hash.txadapter.txq which may pre-write by NIC driver when
>> receiving packets (e.g. pre-write mbuf.hash.fdir.hi field).
>>
>> Because this example only enabled one ethdev queue, so fixes it by reset
>> txq to zero in the first worker stage.
>>
>> [1] dpdk-eventdev_pipeline -l 0-48 --vdev event_sw0 -- -r1 -t1 -e1 -w ff0 -s5 -n0 -c32 -W1000 -D
>> When launch eventdev_pipeline with command [1],  event_sw
>>
>> Fixes: 81fb40f95c82 ("examples/eventdev: add generic worker pipeline")
>> Cc: stable@dpdk.org
>>
>> Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
>> Reported-by: Chenxingyu Wang <wangchenxingyu@huawei.com>
> 
> Lot of check patch issues
> 
> 
> Line too long:
>         0x000000000079208c in rte_eth_tx_buffer (tx_pkt=0x16f8ed300,
> buffer=0x100, queue_id=11, port_id=0) at
> ../lib/ethdev/rte_ethdev.h:6636
>         txa_service_tx (txa=0x17b19d080, ev=0xffffffffe500, n=4) at
> ../lib/eventdev/rte_event_eth_tx_adapter.c:631
>         0x0000000000792234 in txa_service_func (args=0x17b19d080) at
> ../lib/eventdev/rte_event_eth_tx_adapter.c:666
>         0x00000000008b0784 in service_runner_do_callback
> (s=0x17fffe100, cs=0x17ffb5f80, service_idx=2) at
> ../lib/eal/common/rte_service.c:405
>         0x00000000008b0ad8 in service_run (i=2, cs=0x17ffb5f80,
> service_mask=18446744073709551615, s=0x17fffe100,
> serialize_mt_unsafe=0)
>         0x00000000008b0c68 in rte_service_run_iter_on_app_lcore (id=2,
> serialize_mt_unsafe=0) at ../lib/eal/common/rte_service.c:477
>         0x000000000057bcc4 in schedule_devices (lcore_id=0) at
> ../examples/eventdev_pipeline/pipeline_common.h:138
>         0x000000000057ca94 in worker_generic_burst (arg=0x17b131e80)
> at ../examples/eventdev_pipeline/pipeline_worker_generic.c:83
>         0x00000000005794a8 in main (argc=11, argv=0xfffffffff470) at
> ../examples/eventdev_pipeline/main.c:449
>         [1] dpdk-eventdev_pipeline -l 0-48 --vdev event_sw0 -- -r1 -t1
> -e1 -w ff0 -s5 -n0 -c32 -W1000 -D
> Contributor name/email mismatch with .mailmap:
>         Chenxingyu Wang <wangchenxingyu@huawei.com> is unknown in .mailmap
> 
> Invalid patch(es) found - checked 1 patch
> check-git-log failed
> 
> ### [PATCH] examples/eventdev: fix segment fault with generic pipeline
> 
> WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line
> (possible unwrapped commit description?)
> #9:
> 0x000000000079208c in rte_eth_tx_buffer (tx_pkt=0x16f8ed300,
> buffer=0x100, queue_id=11, port_id=0) at
> ../lib/ethdev/rte_ethdev.h:6636
> 
> WARNING:BAD_REPORTED_BY_LINK: Reported-by: should be immediately
> followed by Closes: with a URL to the report
> #34:
> Reported-by: Chenxingyu Wang <wangchenxingyu@huawei.com>
> Acked-by: Pavan Nikhilesh <pbhagavatula@marvell.com>