RE: [PATCH 2/5] hv: add helpers to handle hv_util device state

From: KY Srinivasan
Date: Mon Sep 21 2015 - 12:35:28 EST




> -----Original Message-----
> From: Olaf Hering [mailto:olaf@xxxxxxxxx]
> Sent: Monday, September 21, 2015 3:26 AM
> To: KY Srinivasan <kys@xxxxxxxxxxxxx>; Greg KH
> <gregkh@xxxxxxxxxxxxxxxxxxx>
> Cc: linux-kernel@xxxxxxxxxxxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx;
> apw@xxxxxxxxxxxxx; vkuznets@xxxxxxxxxx; jasowang@xxxxxxxxxx
> Subject: Re: [PATCH 2/5] hv: add helpers to handle hv_util device state
>
> On Sun, Sep 20, Greg KH wrote:
>
> > Just use a lock, that's what it is there for.
>
> How would that help? It might help because it enforces ordering. But
> that requires that all three utils get refactored to deal with the
> introduced locking. I will let KY comment on this.
>
> The issue I see with fcopy is that after or while fcopy_respond_to_host
> runs an interrupt triggers which also calls into
> hv_fcopy_onchannelcallback. It was most likely caused by a logic change
> in "recent" vmbus updates because this did not happen before. At least,
> the fcopy hang was not seen earler. Maybe the bug did just not trigger
> up to now for other reasons...

All util channels are bound to CPU 0. Just forcing all activity on CPU 0 may be the
simplest solution here. Besides, these are not performance critical services anyway.

The problem you may have run into could be related to the fact that we could potentially
run the polling function on a CPU other than CPU 0.

Regards,

K. Y
>
> Olaf