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

Jason Wang jasowang at redhat.com
Tue Feb 3 03:08:46 UTC 2015



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.

Thanks





More information about the devel mailing list