RE: [PATCH V5 1/1] hv_netvsc: Use the xmit_more skb flag to optimize signaling the host

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Joe Perches [mailto:joe@xxxxxxxxxxx]
> Sent: Sunday, May 10, 2015 10:58 PM
> To: KY Srinivasan
> Cc: davem@xxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx; olaf@xxxxxxxxx;
> apw@xxxxxxxxxxxxx; jasowang@xxxxxxxxxx
> Subject: Re: [PATCH V5 1/1] hv_netvsc: Use the xmit_more skb flag to
> optimize signaling the host
> 
> On Sun, 2015-05-10 at 21:08 -0700, K. Y. Srinivasan wrote:
> > Based on the information given to this driver (via the xmit_more skb flag),
> > we can defer signaling the host if more packets are on the way. This will
> help
> > make the host more efficient since it can potentially process a larger batch
> of
> > packets. Implement this optimization.
> 
> trivia:
> 
> I think that indirecting
> VMBUS_DATA_PACKET_FLAG_COMPLETTION_REQUESTED
> into a non-const temporary isn't very useful.
> 
> Whenever overly long identifiers like VMBUS_<FOO> is used,
> I think that it'd be better to use it directly and ignore
> 80 column warnings.

Thanks Joe; if Dave agrees, I can send v6 of this patch out.

Regards,

K. Y
> 
> Same with the "sizeof(struct nvsp_message)" on two lines.
> 
> > diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
> []
> > @@ -743,6 +743,8 @@ static inline int netvsc_send_pkt(
> >  	u64 req_id;
> >  	int ret;
> >  	struct hv_page_buffer *pgbuf;
> > +	u32 vmbus_flags =
> VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED;
> > +	u32 ring_avail = hv_ringbuf_avail_percent(&out_channel-
> >outbound);
> []
> > @@ -769,30 +771,41 @@ static inline int netvsc_send_pkt(
> []
> > +		ret = vmbus_sendpacket_pagebuffer_ctl(out_channel,
> > +						      pgbuf,
> > +						      packet->page_buf_cnt,
> > +						      &nvmsg,
> > +						      sizeof(struct
> > +							     nvsp_message),
> > +						      req_id,
> > +						      vmbus_flags,
> > +						      !packet->xmit_more);
> 
> []
> 
> >  			netif_tx_stop_queue(netdev_get_tx_queue(
> >  					    ndev, q_idx));
> 
> This could be on one line too.
> 

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux