From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9CFFD41CBE; Fri, 17 Feb 2023 10:44:59 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3014D40F17; Fri, 17 Feb 2023 10:44:59 +0100 (CET) Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by mails.dpdk.org (Postfix) with ESMTP id 3744440EE1 for ; Fri, 17 Feb 2023 10:44:57 +0100 (CET) Received: from dggpeml500024.china.huawei.com (unknown [172.30.72.57]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4PJ6Lf3CmJzGplH; Fri, 17 Feb 2023 17:43:06 +0800 (CST) Received: from [10.67.100.224] (10.67.100.224) by dggpeml500024.china.huawei.com (7.185.36.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.17; Fri, 17 Feb 2023 17:44:55 +0800 Subject: Re: [PATCH v5 2/2] ethdev: support xstats reset telemetry command To: Bruce Richardson CC: Ferruh Yigit , Dongdong Liu , , , , , References: <20221219090723.29356-1-fengchengwen@huawei.com> <20230209023203.35269-1-fengchengwen@huawei.com> <20230209023203.35269-3-fengchengwen@huawei.com> <6921c549-c980-8911-cebf-2c7ab7872f02@amd.com> <92b271ec-3271-1c80-e148-4a53f97bc074@huawei.com> From: fengchengwen Message-ID: <4ba214e6-6e9c-a527-0027-9f98b1fec537@huawei.com> Date: Fri, 17 Feb 2023 17:44:55 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [10.67.100.224] X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To dggpeml500024.china.huawei.com (7.185.36.10) X-CFilter-Loop: Reflected X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On 2023/2/16 20:54, Bruce Richardson wrote: > On Thu, Feb 16, 2023 at 08:42:34PM +0800, fengchengwen wrote: >> On 2023/2/16 20:06, Ferruh Yigit wrote: >>> On 2/16/2023 11:53 AM, fengchengwen wrote: >>>> On 2023/2/15 11:19, Dongdong Liu wrote: >>>>> Hi Chengwen >>>>> >>>>> On 2023/2/9 10:32, Chengwen Feng wrote: >>>>>> The xstats reset is useful for debugging, so add it to the ethdev >>>>>> telemetry command lists. >>>>>> >>>>>> Signed-off-by: Chengwen Feng >>>>> This patch looks good, so >>>>> Reviewed-by: Dongdong Liu >>>>> >>>>> A minior question >>>>> Do we need to support stats reset ? >>>> >>>> Stats is contained by xstats, and future direction I think is xstats. >>>> So I think we don't need support stats reset. >>>> >>> >>> I have similar question with Dongdong, readonly values are safe for >>> telemetry, but modifying data can be more tricky since we don't have >>> locking in ethdev APIs, this can cause concurrency issues. >> >> Yes, it indeed has concurrency issues. >> >>> >>> Overall do we want telemetry go that way and become something that >>> alters ethdev data/config? >> >> There are at least two part of data: config and status. >> For stats (which belong status data) could help for debugging, I think it's acceptable. >> >> As for concurrency issues. People should know what to do and when to do, just like >> the don't invoke config API (e.g. dev_configure/dev_start/...) concurrency. >> > While this is probably ok for now, I think in next release we should look > to add some sort of support for locking for destructive ops in a future > release. For example, we could: > > 1. Add support for marking a callback as "destructive" and only allow it to > be called if only one connection is present or > > 2. Make it possible for callbacks to query the number of connections so > that the callback itself is non-destructive in more than one connection is > open. > > [Both of these will require locking support so that new connections aren't > openned when the callback is in-flight!] Except telemetry, the application may have other console could execute DPDK API. So I think trying to keep it simple, it's up to the user to invoke. > > Any other thoughts or suggestions? > > /Bruce > . >