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 6A6D6A0C4C; Wed, 17 Nov 2021 00:22:07 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EA2194068C; Wed, 17 Nov 2021 00:22:05 +0100 (CET) Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by mails.dpdk.org (Postfix) with ESMTP id 5A5A440040 for ; Wed, 17 Nov 2021 00:22:05 +0100 (CET) Received: by mail-pl1-f173.google.com with SMTP id o14so517474plg.5 for ; Tue, 16 Nov 2021 15:22:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20210112.gappssmtp.com; s=20210112; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ajncYEK6R60VYLeJWBTEdDX8BDANG48MG3uLpfszUF4=; b=dDIkcy2y1GP7eiUDBZY3CrUBkQBebfEaaBxp+Qp03bKBS0toyNDHEEiZhfqAOWEMSl yp6c7FSUAEZgA9thm0zbPdNrDF6RJ9f8D8W5hU+BSRlJAGWxadUvDaumsz84QfFtX/CP WpVDxhrvceCRgnbf+qvCRe89t39nzRontZqAutF1rAjxlOaRruie7xLjD30Ewg+C0cEb HwoemwZ7HPKEnVkCs9mScKNBpIxnDYb9x/UwUW6Sgwp08TVAZLfNMZsOnJnQLEOZRqLv mF+Dcayu1q+yuJFg+gYINcRvtf42hFskBmG3rNu4dwypcDIbKPT2u+1MbtYOw929qyKG iKpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ajncYEK6R60VYLeJWBTEdDX8BDANG48MG3uLpfszUF4=; b=QfZ2p9OW4u3+Z60e5Jq3uaBINSTyH5IKfHuXuXIh6ZGWYPeOq0ysC8YRg3CbsPbP6N sq+X5OG7On8vaeF2upm+rnQhQRyO8vuI/2zJwrTsv2AEyLkUpMcQuVzTxE2JqMZo/NuH v69C0hUybV5zx40fhRDaB6sp+EtUe/kz/Tsc2igPixI/72McnN9ztWXsgZhDFs2gEuoa f+pqCy521Q+MFzPDmfC5OHm7YBjJ9putkutSYNmxLONKQXrcZoSF9y769iHF7N912znZ IVNcbeYHcHyq8SxOv5emMFlxYscxBJ8OLNsVwZm8tMXXy7nxvor6YJ67ar1SyhydLshh hGrg== X-Gm-Message-State: AOAM531up1EJ2oi0jq97cWQ3vzv+Y/SQSVrQgbq7/nFYjXrQF/c5YPID AkmA00tcXuTQlqEkZiRzRHLZYg== X-Google-Smtp-Source: ABdhPJxa0q/oGW533GZQw967gsB2ki1xFNiI6rIj8ECn7touiXmluoVpocY1ezu1ZM4CYi+uNzkC+g== X-Received: by 2002:a17:902:d2cd:b0:141:fbe2:b658 with SMTP id n13-20020a170902d2cd00b00141fbe2b658mr49422575plc.49.1637104924400; Tue, 16 Nov 2021 15:22:04 -0800 (PST) Received: from hermes.local (204-195-33-123.wavecable.com. [204.195.33.123]) by smtp.gmail.com with ESMTPSA id f2sm21056953pfe.132.2021.11.16.15.22.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 16 Nov 2021 15:22:04 -0800 (PST) Date: Tue, 16 Nov 2021 15:22:01 -0800 From: Stephen Hemminger To: Tyler Retzlaff Cc: "Ananyev, Konstantin" , "dev@dpdk.org" Subject: Re: ethdev: hide internal structures Message-ID: <20211116152201.2bd1b0da@hermes.local> In-Reply-To: <20211116225808.GA27960@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> References: <20211116002440.GA17166@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> <20211116191018.GA31070@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> <20211116132510.49731a0c@hermes.local> <20211116225808.GA27960@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit 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 Tue, 16 Nov 2021 14:58:08 -0800 Tyler Retzlaff wrote: > On Tue, Nov 16, 2021 at 01:25:10PM -0800, Stephen Hemminger wrote: > > On Tue, 16 Nov 2021 11:10:18 -0800 > > Tyler Retzlaff wrote: > > > > > On Tue, Nov 16, 2021 at 10:32:55AM +0000, Ananyev, Konstantin wrote: > > > > > > > > rte_eth_dev, rte_eth_dev_data, rte_eth_rxtx_callback are internal > > > > data structures that were used by public inline ethdev functions. > > > > Well behaving app should not access these data structures directly. > > > > So, for well behaving app there should no changes in the code required. > > > > That what I meant by 'transparent' above. > > > > But it is still an ABI change, so yes, the app has to be re-compiled. > > > > > > so it appears the application was establishing a private context / > > > vendor extension between the application and a pmd. the application > > > was abusing access to the rte_eth_devices[] to get the private context > > > from the rte_eth_dev. > > > > > > is there a proper / supported way of providing this functionality > > > through the public api? > > > > > > > > > > > Konstantin > > > > Keep a array in application? Portid is universally > > available. > > > > struct my_portdata *my_ports[RTE_ETH_MAXPORTS]; > > i guess by this you mean maintain the storage in the application and > then export that storage for proprietary use in the pmd. ordinarily i > wouldn't want to have this hard-coded into the modules abi but since > we are talking about vendor extensions it has to be managed somewhere. > > anyway, i guess i have my answer. > > thanks stephen, appreciate it. Don't understand, how are application and pmd exchanging extra data? Maybe a non-standard PMD API?