datapath-windows: Rename OvsGetVportNo into OvsComputeVportNo and make public
[cascardo/ovs.git] / lib / dpif-provider.h
index 7966b83..65cf505 100644 (file)
@@ -300,6 +300,13 @@ struct dpif_class {
      * */
     int (*handlers_set)(struct dpif *dpif, uint32_t n_handlers);
 
+    /* If 'dpif' creates its own I/O polling threads, refreshes poll threads
+     * configuration.  'n_rxqs' configures the number of rx_queues, which
+     * are distributed among threads.  'cmask' configures the cpu mask
+     * for setting the polling threads' cpu affinity. */
+    int (*poll_threads_set)(struct dpif *dpif, unsigned int n_rxqs,
+                            const char *cmask);
+
     /* Translates OpenFlow queue ID 'queue_id' (in host byte order) into a
      * priority value used for setting packet priority. */
     int (*queue_to_priority)(const struct dpif *dpif, uint32_t queue_id,
@@ -347,8 +354,9 @@ struct dpif_class {
      * to register an upcall function and enable / disable upcalls.
      *
      * Registers an upcall callback function with 'dpif'. This is only used if
-     * if 'dpif' directly executes upcall functions. */
-    void (*register_upcall_cb)(struct dpif *, exec_upcall_cb *);
+     * if 'dpif' directly executes upcall functions. 'aux' is passed to the
+     * callback on invocation. */
+    void (*register_upcall_cb)(struct dpif *, upcall_callback *, void *aux);
 
     /* Enables upcalls if 'dpif' directly executes upcall functions. */
     void (*enable_upcall)(struct dpif *);
@@ -357,7 +365,7 @@ struct dpif_class {
     void (*disable_upcall)(struct dpif *);
 };
 
-extern const struct dpif_class dpif_linux_class;
+extern const struct dpif_class dpif_netlink_class;
 extern const struct dpif_class dpif_netdev_class;
 
 #ifdef  __cplusplus