> > @@ -1072,12 +1073,19 @@ void vmbus_on_msg_dpc(unsigned long data) > > /* no msg */ > > return; > > > > + /* > > + * The hv_message object is in memory shared with the host. The host > > + * could erroneously or maliciously modify such object. Make sure to > > + * validate its fields and avoid double fetches whenever feasible. > > + */ > > + > > hdr = (struct vmbus_channel_message_header *)msg->u.payload; > > + msgtype = hdr->msgtype; > > Should READ_ONCE be used here? I think it should. Thank you for pointing this out. Andrea