pvcalls-back: do not return error on inet_accept EAGAIN

"Linux Kernel Mailing List" <[email protected]>
Newsgroups gmane.linux.kernel.commits.head
Message-ID <[email protected]>
Web:        https://git.kernel.org/torvalds/c/761191258839b7d922b83064c4251b8bd4e2e7c2
Commit:     761191258839b7d922b83064c4251b8bd4e2e7c2
Parent:     f599c64fdf7d9c108e8717fb04bc41c680120da4
Refname:    refs/heads/master
Author:     Stefano Stabellini <[email protected]>
AuthorDate: Fri Feb 2 17:34:09 2018 -0800
Committer:  Juergen Gross <[email protected]>
CommitDate: Tue Feb 6 15:50:52 2018 +0100

    pvcalls-back: do not return error on inet_accept EAGAIN
    
    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 <[email protected]>
    Reviewed-by: Boris Ostrovsky <[email protected]>
    Signed-off-by: Juergen Gross <[email protected]>
---
 drivers/xen/pvcalls-back.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/xen/pvcalls-back.c b/drivers/xen/pvcalls-back.c
index c7822d8078b9..156e5aea36db 100644
--- a/drivers/xen/pvcalls-back.c
+++ b/drivers/xen/pvcalls-back.c
@@ -548,7 +548,7 @@ static void __pvcalls_back_accept(struct work_struct *work)
 	ret = inet_accept(mappass->sock, sock, O_NONBLOCK, true);
 	if (ret == -EAGAIN) {
 		sock_release(sock);
-		goto out_error;
+		return;
 	}
 
 	map = pvcalls_new_active_socket(fedata,
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.