Hi Bruce, Thank you very much for these comments which really make sense for me. I will correct these problems in the next version.
Thanks again. Cheng > -----Original Message----- > From: Bruce Richardson <bruce.richard...@intel.com> > Sent: Monday, July 13, 2020 9:28 PM > To: Jiang, Cheng1 <cheng1.ji...@intel.com> > Cc: dev@dpdk.org; Fu, Patrick <patrick...@intel.com> > Subject: Re: [PATCH 20.11] raw/ioat: added a flag to control copying handle > parameters > > On Mon, Jul 13, 2020 at 07:15:19AM +0000, Cheng Jiang wrote: > > Added a flag which controls whether rte_ioat_enqueue_copy and > > rte_ioat_completed_copies function should process handle parameters to > > improve the performance when handle parameters are not necessary to > > use. This is targeting > > 20.11 release. > > > > Signed-off-by: Cheng Jiang <cheng1.ji...@intel.com> > > --- > > drivers/raw/ioat/ioat_rawdev.c | 1 + > > drivers/raw/ioat/rte_ioat_rawdev.h | 14 +++++++++++--- > > 2 files changed, 12 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/raw/ioat/ioat_rawdev.c > > b/drivers/raw/ioat/ioat_rawdev.c index 87fd088aa..5bf030785 100644 > > --- a/drivers/raw/ioat/ioat_rawdev.c > > +++ b/drivers/raw/ioat/ioat_rawdev.c > > @@ -57,6 +57,7 @@ ioat_dev_configure(const struct rte_rawdev *dev, > rte_rawdev_obj_t config) > > return -EINVAL; > > > > ioat->ring_size = params->ring_size; > > + ioat->hdls_enable = params->hdls_enable; > > if (ioat->desc_ring != NULL) { > > rte_memzone_free(ioat->desc_mz); > > ioat->desc_ring = NULL; > > diff --git a/drivers/raw/ioat/rte_ioat_rawdev.h > > b/drivers/raw/ioat/rte_ioat_rawdev.h > > index f765a6557..daca04dd3 100644 > > --- a/drivers/raw/ioat/rte_ioat_rawdev.h > > +++ b/drivers/raw/ioat/rte_ioat_rawdev.h > > @@ -35,6 +35,7 @@ > > */ > > struct rte_ioat_rawdev_config { > > unsigned short ring_size; > > + bool hdls_enable; > > }; > > > You need a doxygen comment on the new structure member (and add to > existing one). While it's fairly clear what ring_size parameter should do, the > hdls_enable one needs a proper explanation. > > I also think you might want to investigate changing it to "hdls_disable" > so that the default zero-value is the current behaviour. Requiring it to be > set > as 1 means that existing code will likely recompile but fail to work. > For example, the ioat_rawdev_autotest fails on completion checks now.