[dpdk-dev] virtio: use pointer to replace memcpy

Message ID 20170811021318.64276-1-zhiyong.yang@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Yuanhan Liu
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Yang, Zhiyong Aug. 11, 2017, 2:13 a.m. UTC
  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

Fan Zhang Oct. 5, 2017, 9:31 a.m. UTC | #1
> -----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>
  
Yuanhan Liu Oct. 6, 2017, 6:29 a.m. UTC | #2
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
  

Patch

diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c
index e320811ed..dff3c4de4 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -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