On 09/15/2017 07:00 PM, Stefano Stabellini wrote:
Send PVCALLS_BIND to the backend. Introduce a new structure, part of
struct sock_mapping, to store information specific to passive sockets.

Introduce a status field to keep track of the status of the passive
socket.

Signed-off-by: Stefano Stabellini <stef...@aporeto.com>
CC: boris.ostrov...@oracle.com
CC: jgr...@suse.com
---
  drivers/xen/pvcalls-front.c | 68 +++++++++++++++++++++++++++++++++++++++++++++
  drivers/xen/pvcalls-front.h |  3 ++
  2 files changed, 71 insertions(+)

diff --git a/drivers/xen/pvcalls-front.c b/drivers/xen/pvcalls-front.c
index ef511b6..50b6588 100644
--- a/drivers/xen/pvcalls-front.c
+++ b/drivers/xen/pvcalls-front.c
@@ -72,6 +72,13 @@ struct sock_mapping {
wait_queue_head_t inflight_conn_req;
                } active;
+               struct {
+               /* Socket status */
+#define PVCALLS_STATUS_UNINITALIZED  0
+#define PVCALLS_STATUS_BIND          1
+#define PVCALLS_STATUS_LISTEN        2
+                       uint8_t status;
+               } passive;
        };
  };





+       req->u.bind.id = (uint64_t) map;

Space between cast and variable (this happens in quite a few places)

+       memcpy(req->u.bind.addr, addr, sizeof(*addr));
+       req->u.bind.len = addr_len;
+
+       init_waitqueue_head(&map->passive.inflight_accept_req);

This queue is not introduced until patch 8.

-boris

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to