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 4BCE0A0C53; Tue, 16 Nov 2021 22:25:16 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CBF2540141; Tue, 16 Nov 2021 22:25:15 +0100 (CET) Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com [209.85.215.171]) by mails.dpdk.org (Postfix) with ESMTP id E686B40040 for ; Tue, 16 Nov 2021 22:25:14 +0100 (CET) Received: by mail-pg1-f171.google.com with SMTP id b4so281129pgh.10 for ; Tue, 16 Nov 2021 13:25:14 -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=Ks2TBsUWcOHbwrZxywI2aaIAAVGZzaplUkpR9tMuPMI=; b=gH7DiHXiCHEcn1UhTzED8X0ZQN2bN+Q4Y2NqDPwAUOjEtRBw8w1ZVcMfkUc1H/MWla A3qp3adrPdvUuVFtZTfVBUoCIELdSBXS7NdpAzPIhB/xI4CVfBPV1wmqiNwsROyBqqYk OfGCc6V7R4ts57VkIj045/KtGnu/+esSd0noA5MIEuHRbF0lTBoYKNYGUDVBZfKbvHFP puonJMBYd/CIovYTAOJUQ/cqjm6yHKTNexGczoL23mkrCCxRRXh7MEPm/ll5h6+7IUKC jtm1PFL4nqS/qvu6ykbrQ+Dm0M9Orcmm45tZ1UNqhzhiJgabS31fm/UQi0hg0diFJjs1 ryCw== 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=Ks2TBsUWcOHbwrZxywI2aaIAAVGZzaplUkpR9tMuPMI=; b=nhqiZLRJu1k82T+lX4m5lLr9N/azDTPidFrsGHBW1WnNQOiOVNn2Yjz3fom4pd8yQv clYUqayEVDPyvm+p8pKABnxLBqpH8Y7bySe8AUdEwpWKXhbIYq4l21BbDsfBemRI8iQK spBt9IEJV49Ugq+pc1l44bd+aFbLcOzdjPZvivvgnL8RF0tg6rYtWByYqQCjxJm2u6Wo RbZM2zNE4H30HGN44ZK/txqYSe5KnYqfv6elz/gsJFdrfDDC/ppX7TlQ0iwWyVbbi30T OdFveZhh5Lyd+k0lNyUCFXnoUanI0ZzDwp//tyifdcTaKIxJSiiVvfyalIoIngoZLwRP +Q5w== X-Gm-Message-State: AOAM530aFC2nsS6u7cZXQgssLOvXhJFCuSDsvLKqtGcw0a5rmbzAbtwi /86ImPZehTPHUP6ioZ9s2QqCXw== X-Google-Smtp-Source: ABdhPJzmJa0PS7gVpBkdYDyOie8iBIlbrYmbycaGXGcRsmlOJwhnBc3Bpq/rNRX7BJqKoub/GAsSkg== X-Received: by 2002:a65:6a12:: with SMTP id m18mr1581719pgu.124.1637097913808; Tue, 16 Nov 2021 13:25:13 -0800 (PST) Received: from hermes.local (204-195-33-123.wavecable.com. [204.195.33.123]) by smtp.gmail.com with ESMTPSA id y9sm3076303pjt.27.2021.11.16.13.25.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 16 Nov 2021 13:25:13 -0800 (PST) Date: Tue, 16 Nov 2021 13:25:10 -0800 From: Stephen Hemminger To: Tyler Retzlaff Cc: "Ananyev, Konstantin" , "dev@dpdk.org" Subject: Re: ethdev: hide internal structures Message-ID: <20211116132510.49731a0c@hermes.local> In-Reply-To: <20211116191018.GA31070@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> References: <20211116002440.GA17166@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net> <20211116191018.GA31070@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 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];