X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fdpif-linux.h;h=b08d28e5ccc129d9e56983a8528eff247cb1fef5;hb=cc75061af782bb7e99d40e3e00a8eb90b2cbbc51;hp=727a9e52d20ee2f0fb4727188f55289386e5b679;hpb=f613a0d72c521ca3a4eeb2c29ac523f6fdf72667;p=openvswitch diff --git a/lib/dpif-linux.h b/lib/dpif-linux.h index 727a9e52..b08d28e5 100644 --- a/lib/dpif-linux.h +++ b/lib/dpif-linux.h @@ -18,8 +18,9 @@ #define DPIF_LINUX_H 1 #include +#include #include -#include "openvswitch/datapath-protocol.h" +#include struct ofpbuf; @@ -32,13 +33,17 @@ struct dpif_linux_vport { uint32_t port_no; /* UINT32_MAX if unknown. */ enum ovs_vport_type type; - /* Attributes. */ + /* Attributes. + * + * The 'stats' member points to 64-bit data that might only be aligned on + * 32-bit boundaries, so use get_unaligned_u64() to access its values. + */ const char *name; /* OVS_VPORT_ATTR_NAME. */ + const uint32_t *upcall_pid; /* OVS_VPORT_ATTR_UPCALL_PID. */ const struct ovs_vport_stats *stats; /* OVS_VPORT_ATTR_STATS. */ const uint8_t *address; /* OVS_VPORT_ATTR_ADDRESS. */ const struct nlattr *options; /* OVS_VPORT_ATTR_OPTIONS. */ size_t options_len; - int ifindex; /* OVS_VPORT_ATTR_IFINDEX. */ }; void dpif_linux_vport_init(struct dpif_linux_vport *);