RE: [PATCH v7 net-next 1/1] hv_sock: introduce Hyper-V Sockets

From: Dexuan Cui
Date: Thu Apr 07 2016 - 08:02:42 EST


> From: Joe Perches [mailto:joe@xxxxxxxxxxx]
> Sent: Thursday, April 7, 2016 19:30
> To: Dexuan Cui <decui@xxxxxxxxxxxxx>; gregkh@xxxxxxxxxxxxxxxxxxx;
> davem@xxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> devel@xxxxxxxxxxxxxxxxxxxxxx; olaf@xxxxxxxxx; apw@xxxxxxxxxxxxx;
> jasowang@xxxxxxxxxx; KY Srinivasan <kys@xxxxxxxxxxxxx>; Haiyang Zhang
> <haiyangz@xxxxxxxxxxxxx>
> Cc: vkuznets@xxxxxxxxxx
> Subject: Re: [PATCH v7 net-next 1/1] hv_sock: introduce Hyper-V Sockets
>
> On Thu, 2016-04-07 at 05:50 -0700, Dexuan Cui wrote:
> > Hyper-V Sockets (hv_sock) supplies a byte-stream based communication
> > mechanism between the host and the guest. It's somewhat like TCP over
> > VMBus, but the transportation layer (VMBus) is much simpler than IP.
>
> style trivia:
>
> > diff --git a/net/hv_sock/af_hvsock.c b/net/hv_sock/af_hvsock.c
> []
> > +static struct sock *__hvsock_find_bound_socket(const struct sockaddr_hv
> *addr)
> > +{
> > + struct hvsock_sock *hvsk;
> > +
> > + list_for_each_entry(hvsk, &hvsock_bound_list, bound_list)
> > + if (uuid_equals(addr->shv_service_id,
> > + hvsk->local_addr.shv_service_id))
> > + return hvsock_to_sk(hvsk);
>
> Because there's an if, it's generally nicer to use
> braces in the list_for_each

Thanks for the suggestion, Joe!
I'll add {}.

> > +static struct sock *__hvsock_find_connected_socket_by_channel(
> > + const struct vmbus_channel *channel)
> > +{
> > + struct hvsock_sock *hvsk;
> > +
> > + list_for_each_entry(hvsk, &hvsock_connected_list, connected_list)
> > + if (hvsk->channel == channel)
> > + return hvsock_to_sk(hvsk);
> > + return NULL;
>
> here too
I'll fix this too.

> > +static int hvsock_sendmsg(struct socket *sock, struct msghdr *msg, size_t len)
> > +{
> []
> > + if (msg->msg_flags & ~MSG_DONTWAIT) {
> > + pr_err("hvsock_sendmsg: unsupported flags=0x%x\n",
> > +        msg->msg_flags);
>
> All the pr_<level> messages with embedded function
> names could use "%s:", __func__
I'll fix this.

Thanks,
-- Dexuan