From mboxrd@z Thu Jan 1 00:00:00 1970 From: Olivier Matz Subject: Re: [PATCH v2 5/7] eal/linux: mmap ioports on ppc64 Date: Mon, 30 May 2016 10:45:40 +0200 Message-ID: <574BFDB4.9030109@6wind.com> References: <1463143859-3105-1-git-send-email-olivier.matz@6wind.com> <1463479192-2488-1-git-send-email-olivier.matz@6wind.com> <1463479192-2488-6-git-send-email-olivier.matz@6wind.com> <20160523130749.GJ5641@yliu-dev.sh.intel.com> <5743086A.2020103@6wind.com> <20160524051552.GQ5641@yliu-dev.sh.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Cc: David Marchand , "dev@dpdk.org" , Chao Zhu , "Xie, Huawei" , Panu Matilainen , Thomas Monjalon To: Yuanhan Liu Return-path: Received: from mail.droids-corp.org (zoll.droids-corp.org [94.23.50.67]) by dpdk.org (Postfix) with ESMTP id 8636F66DA for ; Mon, 30 May 2016 10:45:50 +0200 (CEST) In-Reply-To: <20160524051552.GQ5641@yliu-dev.sh.intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 05/24/2016 07:15 AM, Yuanhan Liu wrote: > On Mon, May 23, 2016 at 03:40:58PM +0200, Olivier Matz wrote: >> For reference, here is the report of the ABI checker for EAL: >> >> [=E2=88=92] struct rte_pci_ioport (2) >> >> 1 Field len has been added to this type. >> 1) This field will not be initialized by old clients. >> 2) Size of the inclusive type has been changed. >> NOTE: this field should be accessed only from the new library >> functions, otherwise it may result in crash or incorrect behavio= r >> of applications. >> 2 Size of this type has been changed from 16 bytes to 24 bytes. =09 >> The fields or parameters of such data type may be incorrectly >> initialized or accessed by old client applications. >> >> [=E2=88=92] affected symbols (4) >> rte_eal_pci_ioport_map ( struct rte_pci_device* dev, int bar, >> struct rte_pci_ioport* p ) @@ DPDK_16.04 >> 3rd parameter 'p' (pointer) has base type 'struct rte_pci_ioport'. >> rte_eal_pci_ioport_read ( struct rte_pci_ioport* p, void* data, >> size_t len, off_t offset ) @@ DPDK_16.04 >> 1st parameter 'p' (pointer) has base type 'struct rte_pci_ioport'. >> rte_eal_pci_ioport_unmap ( struct rte_pci_ioport* p ) @@ DPDK_16.04 >> 1st parameter 'p' (pointer) has base type 'struct rte_pci_ioport'. >> rte_eal_pci_ioport_write ( struct rte_pci_ioport* p, void const* data= , >> size_t len, off_t offset ) @@ DPDK_16.04 >> 1st parameter 'p' (pointer) has base type 'struct rte_pci_ioport'. >> >> >> My understanding of the comment for this structure is that it's >> internal to EAL: >=20 > I'm not quite sure that is enough. Cc'ed Panu, the guru on ABI stuff, > hopefully he could shed some light on it. >=20 >> /** >> * A structure used to access io resources for a pci device. >> * rte_pci_ioport is arch, os, driver specific, and should not be used >> outside >> * of pci ioport api. >> */ >> struct rte_pci_ioport { >> ... >> } >> >> So I'd say it's ok to have it integrated for 16.07. >=20 > I'll let Thomas to decide it :) Panu or Thomas, do you have any comment on this? Thanks, Olivier