From 531bee45687eb76a8f62b5e64ecd24254fb45c0e Mon Sep 17 00:00:00 2001 From: Eitan Eliahu Date: Sat, 27 Sep 2014 01:39:06 -0700 Subject: datapath-windows: Implement event read handler. The Read event handler is executed when user mode issues a socket receive on an MC socket associated with the event queue. A new IOCTL READ command is used to differentiate between transaction based and packet miss sockets. An entry for the handler will be added once the Control family (logically should have been added to the Vport family) implementation checked in. User mode code for setting the socket type will follow Signed-off-by: Eitan Eliahu Acked-by: Ankur Sharma Acked-by: Nithin Raju Acked-by: Alin Gabriel Serdean Signed-off-by: Ben Pfaff --- datapath-windows/include/OvsDpInterfaceExt.h | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'datapath-windows/include') diff --git a/datapath-windows/include/OvsDpInterfaceExt.h b/datapath-windows/include/OvsDpInterfaceExt.h index 72b2e8e83..e1c186ffc 100644 --- a/datapath-windows/include/OvsDpInterfaceExt.h +++ b/datapath-windows/include/OvsDpInterfaceExt.h @@ -34,11 +34,17 @@ #define OVS_IOCTL_READ \ CTL_CODE (OVS_IOCTL_DEVICE_TYPE, OVS_IOCTL_START + 0x0, METHOD_OUT_DIRECT,\ FILE_READ_ACCESS) +#define OVS_IOCTL_READ_EVENT \ + CTL_CODE (OVS_IOCTL_DEVICE_TYPE, OVS_IOCTL_START + 0x1, METHOD_OUT_DIRECT, \ + FILE_READ_ACCESS) +#define OVS_IOCTL_READ_PACKET \ + CTL_CODE (OVS_IOCTL_DEVICE_TYPE, OVS_IOCTL_START + 0x2, METHOD_OUT_DIRECT, \ + FILE_READ_ACCESS) #define OVS_IOCTL_WRITE \ - CTL_CODE (OVS_IOCTL_DEVICE_TYPE, OVS_IOCTL_START + 0x1, METHOD_IN_DIRECT,\ + CTL_CODE (OVS_IOCTL_DEVICE_TYPE, OVS_IOCTL_START + 0x3, METHOD_IN_DIRECT,\ FILE_READ_ACCESS) #define OVS_IOCTL_TRANSACT \ - CTL_CODE (OVS_IOCTL_DEVICE_TYPE, OVS_IOCTL_START + 0x2, METHOD_OUT_DIRECT,\ + CTL_CODE (OVS_IOCTL_DEVICE_TYPE, OVS_IOCTL_START + 0x4, METHOD_OUT_DIRECT,\ FILE_WRITE_ACCESS) /* @@ -72,6 +78,9 @@ enum ovs_win_control_cmd { OVS_CTRL_CMD_WIN_GET_PID, OVS_CTRL_CMD_WIN_PEND_REQ, OVS_CTRL_CMD_MC_SUBSCRIBE_REQ, + + /* This command is logically belong to the Vport family */ + OVS_CTRL_CMD_EVENT_NOTIFY }; /* NL Attributes for joining/unjoining an MC group */ -- cgit v1.2.1