RE: [PATCH] Drivers: hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23)

From: Dexuan Cui
Date: Sun Jan 19 2020 - 18:35:44 EST


> From: Michael Kelley
> Sent: Saturday, January 18, 2020 9:29 AM
> > +
> > + /* Linux ignores some messages, e.g.
> CHANNELMSG_TL_CONNECT_RESULT. */
> > + if (!entry->message_handler)
> > + goto msg_handled;
> > +
>
> FWIW, with this new check, all of the validity checks in vmbus_onmessage()
> are redundant and could be removed. There's already a check here that
> ensures msgtype won't be too big, and this new check ensures that
> message_handler is not NULL.

Agreed. I just sent a v2 that removes the redundant code.

> > if (entry->handler_type == VMHT_BLOCKING) {
> > ctx = kmalloc(sizeof(*ctx), GFP_ATOMIC);
> > if (ctx == NULL)
> > diff --git a/include/linux/hyperv.h b/include/linux/hyperv.h
> > index 26f3aeeae1ca..41c58011431e 100644
> > --- a/include/linux/hyperv.h
> > +++ b/include/linux/hyperv.h
> > @@ -425,6 +425,8 @@ enum vmbus_channel_message_type {
> > CHANNELMSG_19 = 19,
> > CHANNELMSG_20 = 20,
> > CHANNELMSG_TL_CONNECT_REQUEST = 21,
> > + CHANNELMSG_22 = 22,
> > + CHANNELMSG_TL_CONNECT_RESULT = 23,
> > CHANNELMSG_COUNT
> > };
>
> For completeness, I'd like to see the channel_message_table also updated
> with these new entries so that everything stays in sync and is explicitly
> defined.
>
> Michael

I fixed this in v2 as well.

Thanks!
Dexuan