[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <936e4d18-3f0d-3fc5-2272-c1ad9a5c7022@oracle.com>
Date: Sun, 4 Feb 2018 14:20:25 -0500
From: Boris Ostrovsky <boris.ostrovsky@...cle.com>
To: Stefano Stabellini <sstabellini@...nel.org>, jgross@...e.com
Cc: xen-devel@...ts.xenproject.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] pvcalls-back: do not return error on inet_accept EAGAIN
On 02/02/2018 08:34 PM, Stefano Stabellini wrote:
> When the client sends a regular blocking accept request, the backend is
> expected to return only when the accept is completed, simulating a
> blocking behavior, or return an error.
>
> Specifically, on EAGAIN from inet_accept, the backend shouldn't return
> "EAGAIN" to the client. Instead, it should simply continue the wait.
> Otherwise, the client will send another accept request, which will cause
> another EAGAIN to be sent back, which is a waste of resources and not
> conforming to the expected behavior. Change the behavior by turning the
> "goto error" into a return.
>
> Signed-off-by: Stefano Stabellini <stefano@...reto.com>
I am looking at SYSCALL_DEFINE4(accept4) and sock->ops->accept (which *I
think* is inet_accept, at least in some cases) passes all errors
(including EAGAIN) back to the caller. Is this a different case?
-boris
Powered by blists - more mailing lists