[PATCH V5 5/9] Drivers: hv: vmbus: add APIs to send/recv hvsock packets

Dexuan Cui decui at microsoft.com
Tue Jan 5 15:53:46 UTC 2016


> From: Vitaly Kuznetsov [mailto:vkuznets at redhat.com]
> Sent: Tuesday, January 5, 2016 20:39
> ...
> > +/*
> > + * vmbus_sendpacket_hvsock - Send the hvsock payload 'buf' of a length 'len'
> > + */
> > +int vmbus_sendpacket_hvsock(struct vmbus_channel *channel, void *buf,
> u32 len)
> > ...
> > +
> > +	bufferlist[0].iov_base = &desc;
> > +	bufferlist[0].iov_len  = sizeof(struct vmpacket_descriptor);
> > +	bufferlist[1].iov_base = &pipe_hdr;
> > +	bufferlist[1].iov_len  = sizeof(struct vmpipe_proto_header);
> > +	bufferlist[2].iov_base = buf;
> > +	bufferlist[2].iov_len  = len;
> > +	bufferlist[3].iov_base = &aligned_data;
> > +	bufferlist[3].iov_len  = packetlen_aligned - packetlen;
> > +
> > +	ret = hv_ringbuffer_write(&channel->outbound, bufferlist, 4,
> > &signal);
> 
> Using ARRAY_SIZE(bufferlist) instead of 4 would allow us to keep this
> line untouched when we decide to add something (and compiler will
> optimize it to 4 anyway).

Thanks for the suggestion! I'll fix it.

-- Dexuan


More information about the devel mailing list