[PATCH v2 1/3] hv: hv_util: move vmbus_open() to a later place

KY Srinivasan kys at microsoft.com
Tue Feb 3 03:40:30 UTC 2015



> -----Original Message-----
> From: Jason Wang [mailto:jasowang at redhat.com]
> Sent: Monday, February 2, 2015 7:38 PM
> To: KY Srinivasan
> Cc: Dexuan Cui; gregkh at linuxfoundation.org; linux-kernel at vger.kernel.org;
> driverdev-devel at linuxdriverproject.org; olaf at aepfle.de;
> apw at canonical.com; vkuznets at redhat.com; Haiyang Zhang
> Subject: RE: [PATCH v2 1/3] hv: hv_util: move vmbus_open() to a later place
> 
> 
> 
> On Tue, Feb 3, 2015 at 11:30 AM, KY Srinivasan <kys at microsoft.com>
> wrote:
> >
> >
> >>  -----Original Message-----
> >>  From: Jason Wang [mailto:jasowang at redhat.com]
> >>  Sent: Monday, February 2, 2015 7:09 PM
> >>  To: Dexuan Cui
> >>  Cc: gregkh at linuxfoundation.org; linux-kernel at vger.kernel.org;
> >> driverdev-
> >>  devel at linuxdriverproject.org; olaf at aepfle.de; apw at canonical.com; KY
> >> Srinivasan; vkuznets at redhat.com; Haiyang Zhang
> >>  Subject: RE: [PATCH v2 1/3] hv: hv_util: move vmbus_open() to a
> >> later place
> >>
> >>
> >>
> >>  On Mon, Feb 2, 2015 at 6:09 PM, Dexuan Cui <decui at microsoft.com>
> >> wrote:
> >>  >>  -----Original Message-----
> >>  >>  From: Jason Wang [mailto:jasowang at redhat.com]  >>  Sent: Monday,
> >> February 2, 2015 17:36 PM  >>  To: Dexuan Cui  >>  Cc:
> >> gregkh at linuxfoundation.org; linux-kernel at vger.kernel.org;  >>
> >> driverdev-  >>  devel at linuxdriverproject.org; olaf at aepfle.de;
> >> apw at canonical.com; KY  >> Srinivasan; vkuznets at redhat.com; Haiyang
> >> Zhang  >>  Subject: Re: [PATCH v2 1/3] hv: hv_util: move vmbus_open()
> >> to a  >> later place  >>  >>  >>  >>  On Mon, Feb 2, 2015 at 12:35
> >> PM, Dexuan Cui <decui at microsoft.com>  >> wrote:
> >>  >>  > Before the line vmbus_open() returns, srv->util_cb can be
> >> already  >> > running  > and the variables, like util_fw_version, are
> >> needed by  >> the  > srv->util_cb.
> >>  >>
> >>  >>  A questions is why we do this for util only? Can callbacks of
> >> other  >> devices be called before vmbus_open() returns?
> >>  > The variables are used in vmbus_prep_negotiate_resp(), which is
> >> only  > for the util devices.
> >>  >
> >>  > I think the other devices should already handle the similar issue
> >> > properly.
> >>  > If this is not the case, we need to fix them too.
> >>
> >>  Better to check all the others, e.g in balloon_probe(), it call
> >>  hv_set_drvdata() after vmbus_open() and dose several datas setups in
> >> the  middle. If balloon_onchannelcallback() could be called before
> >> hv_set_drvdata(), the code looks wrong.
> >
> > Jason,
> >
> > For all other device types, the guest initiates the communication with
> > the host and potentially negotiates appropriate (supported) version
> > with the host. For the services packaged in the util driver, the flow
> > is a little different - the host pushes the version information into
> > the guest. So, the fix Dexuan made is only needed in the util driver.
> >
> > Regards,
> >
> > K. Y
> 
> Thanks, so you mean for other device, it won't get any interrupt before guest
> negotiate the version with host?

Yes, the guest initiates the version negotiation. Are you seeing something different?

K. Y
> >
> >>
> >>  Thanks
> >>
> >>
> >



More information about the devel mailing list