lkml.org 
[lkml]   [2017]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRE: [PATCH v2] hv: retry infinitely on hypercall transient failures
    Date


    > -----Original Message-----
    > From: Greg KH [mailto:greg@kroah.com]
    > Sent: Friday, January 06, 2017 11:43 PM
    > To: Long Li <longli@microsoft.com>
    > Cc: KY Srinivasan <kys@microsoft.com>; Haiyang Zhang
    > <haiyangz@microsoft.com>; devel@linuxdriverproject.org; linux-
    > kernel@vger.kernel.org
    > Subject: Re: [PATCH v2] hv: retry infinitely on hypercall transient failures
    >
    > On Sat, Jan 07, 2017 at 07:23:14AM +0000, Long Li wrote:
    > > > -----Original Message-----
    > > > From: Greg KH [mailto:greg@kroah.com]
    > > > Sent: Wednesday, January 04, 2017 11:48 PM
    > > > To: Long Li <longli@microsoft.com>
    > > > Cc: KY Srinivasan <kys@microsoft.com>; Haiyang Zhang
    > > > <haiyangz@microsoft.com>; devel@linuxdriverproject.org; linux-
    > > > kernel@vger.kernel.org
    > > > Subject: Re: [PATCH v2] hv: retry infinitely on hypercall transient
    > > > failures
    > > >
    > > > On Wed, Jan 04, 2017 at 06:12:20PM -0800, Long Li wrote:
    > > > > From: Long Li <longli@microsoft.com>
    > > > >
    > > > > Hyper-v host guarantees that a hypercall will finish in reasonable time.
    > > > > Retry infinitely on transient failures to avoid returning error to upper
    > layer.
    > > >
    > > > Again, never retry "forever", always have a way out, otherwise you will
    > crash.
    > > >
    > > > And again, why are you making this change? What problem does it solve?
    > >
    > > The problem it tries to solve is that in this code we are returning
    > > error prematurely on transient failures. The hypercall is used mostly
    > > in channel establishment. If we return a transient failure, the VM may
    > > not boot or not useful after boot due to some devices missing.
    > >
    > > Another approach is to increase the number of retries. But we don't
    > > know how many retries is safe, and Windows host side expects the guest
    > > retry infinitely and not return error on transient failures.
    >
    > That implies a lot of trust in the host side, don't you think?
    >
    > Worse case, make the delay a minute or so, but give the system a way out
    > incase there's a bug in the host. As there will be bugs in the host, just like
    > there are bugs in the client :)

    This makes sense. 1 minute is a long time for a hypercall. I will send V3.

    >
    > thanks,
    >
    > greg k-h

    \
     
     \ /
      Last update: 2017-01-07 09:07    [W:3.572 / U:0.484 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site