X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Ffailsafe%2Ffailsafe_private.h;h=5d328ffc744706aa110adb71385958f4c82574d9;hb=e940646b20fa;hp=ff78b9f072f9f84685975fa044f4680f9ab5e835;hpb=f234e5bd996dea4ad86e0f7ad48e749e72bdbf42;p=dpdk.git diff --git a/drivers/net/failsafe/failsafe_private.h b/drivers/net/failsafe/failsafe_private.h index ff78b9f072..5d328ffc74 100644 --- a/drivers/net/failsafe/failsafe_private.h +++ b/drivers/net/failsafe/failsafe_private.h @@ -61,6 +61,13 @@ #define DEVARGS_MAXLEN 4096 +enum rxp_service_state { + SS_NO_SERVICE = 0, + SS_REGISTERED, + SS_READY, + SS_RUNNING, +}; + /* TYPES */ struct rx_proxy { @@ -68,6 +75,11 @@ struct rx_proxy { int efd; /* event vector to be used by epoll */ struct rte_epoll_event *evec; + /* rte service id */ + uint32_t sid; + /* service core id */ + uint32_t scid; + enum rxp_service_state sstate; }; struct rxq { @@ -169,7 +181,10 @@ struct fs_priv { * Rx interrupts/events proxy. * The PMD issues Rx events to the EAL on behalf of its subdevices, * it does that by registering an event-fd for each of its queues with - * the EAL. + * the EAL. A PMD service thread listens to all the Rx events from the + * subdevices, when an Rx event is issued by a subdevice it will be + * caught by this service with will trigger an Rx event in the + * appropriate failsafe Rx queue. */ struct rx_proxy rxp; unsigned int pending_alarm:1; /* An alarm is pending */