[dpdk-dev] virtio: use pointer to replace memcpy
Checks
Commit Message
To use pointer instead of memcpy can save many cycles in the funciton
virtio_send_command.
cc: maxime.coquelin@redhat.com
cc: yliu@fridaylinux.org
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
---
drivers/net/virtio/virtio_ethdev.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
Comments
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Zhiyong Yang
> Sent: Friday, August 11, 2017 3:13 AM
> To: dev@dpdk.org
> Cc: maxime.coquelin@redhat.com; yliu@fridaylinux.org; Yang, Zhiyong
> <zhiyong.yang@intel.com>
> Subject: [dpdk-dev] [PATCH] virtio: use pointer to replace memcpy
>
> To use pointer instead of memcpy can save many cycles in the funciton
> virtio_send_command.
>
> cc: maxime.coquelin@redhat.com
> cc: yliu@fridaylinux.org
>
> Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
> ---
> drivers/net/virtio/virtio_ethdev.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
On Thu, Oct 05, 2017 at 09:31:25AM +0000, Zhang, Roy Fan wrote:
>
>
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Zhiyong Yang
> > Sent: Friday, August 11, 2017 3:13 AM
> > To: dev@dpdk.org
> > Cc: maxime.coquelin@redhat.com; yliu@fridaylinux.org; Yang, Zhiyong
> > <zhiyong.yang@intel.com>
> > Subject: [dpdk-dev] [PATCH] virtio: use pointer to replace memcpy
> >
> > To use pointer instead of memcpy can save many cycles in the funciton
> > virtio_send_command.
> >
> > cc: maxime.coquelin@redhat.com
> > cc: yliu@fridaylinux.org
> >
> > Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
> > ---
> > drivers/net/virtio/virtio_ethdev.c | 7 +++----
> > 1 file changed, 3 insertions(+), 4 deletions(-)
> >
>
> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
Applied to dpdk-next-virtio.
Thanks.
--yliu
@@ -162,7 +162,7 @@ virtio_send_command(struct virtnet_ctl *cvq, struct virtio_pmd_ctrl *ctrl,
uint32_t head, i;
int k, sum = 0;
virtio_net_ctrl_ack status = ~0;
- struct virtio_pmd_ctrl result;
+ struct virtio_pmd_ctrl *result;
struct virtqueue *vq;
ctrl->status = status;
@@ -253,10 +253,9 @@ virtio_send_command(struct virtnet_ctl *cvq, struct virtio_pmd_ctrl *ctrl,
PMD_INIT_LOG(DEBUG, "vq->vq_free_cnt=%d\nvq->vq_desc_head_idx=%d",
vq->vq_free_cnt, vq->vq_desc_head_idx);
- memcpy(&result, cvq->virtio_net_hdr_mz->addr,
- sizeof(struct virtio_pmd_ctrl));
+ result = cvq->virtio_net_hdr_mz->addr;
- return result.status;
+ return result->status;
}
static int