From: "Xueming(Steven) Li" <xuemingl@nvidia.com>
To: NBU-Contact-Thomas Monjalon <thomas@monjalon.net>,
"Wang, Haiyue" <haiyue.wang@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>, Asaf Penso <asafp@nvidia.com>,
Parav Pandit <parav@nvidia.com>, Ray Kinsella <mdr@ashroe.eu>
Subject: Re: [dpdk-dev] [PATCH v1] bus/auxiliary: introduce auxiliary bus
Date: Wed, 14 Apr 2021 15:49:31 +0000 [thread overview]
Message-ID: <BY5PR12MB4324A5B3FF7D54E936B78AB1A14E9@BY5PR12MB4324.namprd12.prod.outlook.com> (raw)
In-Reply-To: <1710155.qeZJibJ7ot@thomas>
> -----Original Message-----
> From: Thomas Monjalon <thomas@monjalon.net>
> Sent: Wednesday, April 14, 2021 4:18 PM
> To: Xueming(Steven) Li <xuemingl@nvidia.com>; Wang, Haiyue <haiyue.wang@intel.com>
> Cc: dev@dpdk.org; Asaf Penso <asafp@nvidia.com>; Parav Pandit <parav@nvidia.com>; Ray Kinsella <mdr@ashroe.eu>
> Subject: Re: [dpdk-dev] [PATCH v1] bus/auxiliary: introduce auxiliary bus
>
> 14/04/2021 04:59, Wang, Haiyue:
> > From: Xueming Li
> [...]
> > > +void
> > > +auxiliary_on_scan(struct rte_auxiliary_device *dev) {
> > > + struct rte_devargs *devargs;
> > > +
> > > + devargs = auxiliary_devargs_lookup(dev->name);
> > > + dev->device.devargs = devargs;
> >
> > Can be simple as:
> >
> > dev->device.devargs = auxiliary_devargs_lookup(dev->name);
> >
> > > +}
> > > +
> > > +/*
> > > + * Match the auxiliary Driver and Device using driver function.
> > > + */
> > > +bool
> > > +auxiliary_match(const struct rte_auxiliary_driver *auxiliary_drv,
> > > + const struct rte_auxiliary_device *auxiliary_dev)
> >
> > How about these auxiliary variable name style ?
> >
> > const struct rte_auxiliary_driver *aux_drv, const struct
> > rte_auxiliary_device *aux_dev
>
> +1
>
> [...]
> > > +static int
> > > +rte_auxiliary_probe_one_driver(struct rte_auxiliary_driver *dr,
> > > + struct rte_auxiliary_device *dev) {
> > > + int ret;
> > > + enum rte_iova_mode iova_mode;
> > > +
> >
> > RCT style ?
> > enum rte_iova_mode iova_mode;
> > int ret;
>
> I don't see the benefit of reverse christmas tree.
>
> > > + if ((dr->drv_flags & RTE_AUXILIARY_DRV_NEED_IOVA_AS_VA) > 0 &&
> >
> > '(dr->drv_flags & RTE_AUXILIARY_DRV_NEED_IOVA_AS_VA)' should work, no need '> 0'
>
> Yes it's acceptable to consider bit testing as a boolean.
>
> [...]
> > > +static int
> > > +auxiliary_dma_map(struct rte_device *dev, void *addr, uint64_t
> > > +iova, size_t len) {
> > > + struct rte_auxiliary_device *adev = RTE_DEV_TO_AUXILIARY(dev);
> >
> > How about to use 'aux_dev', instead of 'adev' ?
> >
> > > +
> > > + if (!adev || !adev->driver) {
> >
> > ' RTE_DEV_TO_AUXILIARY' is container of 'dev', so it should check 'dev
> > != NULL', not '!adev'. ; -)
>
> Yes and should be explicit NULL comparison.
>
> [...]
> > > --- /dev/null
> > > +++ b/drivers/bus/auxiliary/linux/auxiliary.c
> > ^
> > |
> > Seems no need to add one more directory 'linux' layer, as the meson said "linux only".
>
> I disagree.
> Linux sub-directory is more explicit.
> And who knows? There could be an implementation on other OSes in future.
This reminds me to change meson, allows bus always available to avoid compilation error,
also need to add stubs with __rte_weak for all functions in common file.
>
>
next prev parent reply other threads:[~2021-04-14 15:49 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-11 13:01 [dpdk-dev] [RFC] " Xueming Li
2021-04-12 8:29 ` Xueming(Steven) Li
2021-04-13 3:23 ` [dpdk-dev] [PATCH v1] " Xueming Li
2021-04-13 8:49 ` Thomas Monjalon
2021-04-14 2:59 ` Wang, Haiyue
2021-04-14 8:17 ` Thomas Monjalon
2021-04-14 8:30 ` Wang, Haiyue
2021-04-14 15:49 ` Xueming(Steven) Li [this message]
2021-04-14 15:39 ` Xueming(Steven) Li
2021-04-14 16:13 ` Wang, Haiyue
2021-04-15 7:35 ` Wang, Haiyue
2021-04-15 7:46 ` Xueming(Steven) Li
2021-04-15 7:51 ` Wang, Haiyue
2021-04-15 7:55 ` Xueming(Steven) Li
2021-04-15 7:59 ` Thomas Monjalon
2021-04-15 8:06 ` Wang, Haiyue
2021-05-10 13:47 ` [dpdk-dev] [RFC v2] " Xueming Li
2021-05-11 9:47 ` Kinsella, Ray
2021-06-10 3:30 ` Xueming(Steven) Li
2021-06-08 7:53 ` Thomas Monjalon
2021-06-08 8:41 ` Wang, Haiyue
2021-06-10 6:29 ` Xueming(Steven) Li
2021-06-10 15:16 ` Wang, Haiyue
2021-06-10 6:30 ` Xueming(Steven) Li
2021-06-13 8:19 ` [dpdk-dev] [PATCH v3 1/2] devargs: add common key definition Xueming Li
2021-06-13 8:19 ` [dpdk-dev] [PATCH v3 2/2] bus/auxiliary: introduce auxiliary bus Xueming Li
2021-06-13 12:58 ` [dpdk-dev] [PATCH v4 1/2] devargs: add common key definition Xueming Li
2021-06-21 8:08 ` Thomas Monjalon
2021-06-23 0:03 ` [dpdk-dev] [PATCH v5 " Xueming Li
2021-06-24 10:05 ` Thomas Monjalon
2021-06-23 0:03 ` [dpdk-dev] [PATCH v5 2/2] bus/auxiliary: introduce auxiliary bus Xueming Li
2021-06-24 16:18 ` Thomas Monjalon
2021-06-25 3:26 ` Xueming(Steven) Li
2021-06-25 12:03 ` Thomas Monjalon
2021-06-25 11:47 ` [dpdk-dev] [PATCH v6 1/2] devargs: add common key definition Xueming Li
2021-07-04 15:51 ` Andrew Rybchenko
2021-07-05 5:36 ` [dpdk-dev] [PATCH v7 " Xueming Li
2021-07-05 5:36 ` [dpdk-dev] [PATCH v7 2/2] bus/auxiliary: introduce auxiliary bus Xueming Li
2021-07-05 6:47 ` Xueming(Steven) Li
2021-07-05 6:45 ` [dpdk-dev] [PATCH v8 1/2] devargs: add common key definition Xueming Li
2021-07-05 9:26 ` Xueming(Steven) Li
2021-07-05 6:45 ` [dpdk-dev] [PATCH v8 2/2] bus/auxiliary: introduce auxiliary bus Xueming Li
2021-07-05 9:19 ` Andrew Rybchenko
2021-07-05 9:30 ` Xueming(Steven) Li
2021-07-05 9:35 ` Andrew Rybchenko
2021-07-05 14:57 ` Thomas Monjalon
2021-07-05 15:06 ` Andrew Rybchenko
2021-07-05 16:47 ` Thomas Monjalon
2021-06-25 11:47 ` [dpdk-dev] [PATCH v6 " Xueming Li
2021-07-04 16:13 ` Andrew Rybchenko
2021-07-05 5:47 ` Xueming(Steven) Li
2021-08-04 9:50 ` Kinsella, Ray
2021-08-04 9:56 ` Xueming(Steven) Li
2021-08-04 10:00 ` Kinsella, Ray
[not found] ` <DM4PR12MB5373DBD9E73E5E0E8505C129A1F19@DM4PR12MB5373.namprd12.prod.outlook.com>
[not found] ` <97d5d1b3-40c3-09ac-2978-83c984b30af0@ashroe.eu>
[not found] ` <DM4PR12MB53736410D2C07101F872363EA1F19@DM4PR12MB5373.namprd12.prod.outlook.com>
2021-08-04 12:14 ` Kinsella, Ray
2021-08-04 13:00 ` Xueming(Steven) Li
2021-08-04 13:12 ` Thomas Monjalon
2021-08-04 13:53 ` Kinsella, Ray
2021-08-04 14:13 ` Thomas Monjalon
2021-06-13 12:58 ` [dpdk-dev] [PATCH v4 " Xueming Li
2021-06-21 16:11 ` Thomas Monjalon
2021-06-22 23:50 ` Xueming(Steven) Li
2021-06-23 8:15 ` Thomas Monjalon
2021-06-23 14:52 ` Xueming(Steven) Li
2021-06-24 6:37 ` Thomas Monjalon
2021-06-24 8:42 ` Xueming(Steven) Li
2021-06-23 8:21 ` Thomas Monjalon
2021-06-23 13:54 ` Xueming(Steven) Li
2021-06-25 4:34 ` [dpdk-dev] [RFC] " Stephen Hemminger
2021-06-25 11:24 ` Xueming(Steven) Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=BY5PR12MB4324A5B3FF7D54E936B78AB1A14E9@BY5PR12MB4324.namprd12.prod.outlook.com \
--to=xuemingl@nvidia.com \
--cc=asafp@nvidia.com \
--cc=dev@dpdk.org \
--cc=haiyue.wang@intel.com \
--cc=mdr@ashroe.eu \
--cc=parav@nvidia.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).