aboutsummaryrefslogtreecommitdiffstats
path: root/xen-2.4.16/include/xeno/vif.h
diff options
context:
space:
mode:
Diffstat (limited to 'xen-2.4.16/include/xeno/vif.h')
-rw-r--r--xen-2.4.16/include/xeno/vif.h22
1 files changed, 20 insertions, 2 deletions
diff --git a/xen-2.4.16/include/xeno/vif.h b/xen-2.4.16/include/xeno/vif.h
index 46cfbd4bb8..7b56caaabe 100644
--- a/xen-2.4.16/include/xeno/vif.h
+++ b/xen-2.4.16/include/xeno/vif.h
@@ -42,8 +42,26 @@ typedef struct tx_shadow_entry_st {
typedef struct net_shadow_ring_st {
rx_shadow_entry_t *rx_ring;
tx_shadow_entry_t *tx_ring;
- unsigned int rx_prod, rx_cons, rx_idx;
- unsigned int tx_prod, tx_cons, tx_idx;
+
+ /*
+ * Private copy of producer. Follows guest OS version, but never
+ * catches up with our consumer index.
+ */
+ unsigned int rx_prod;
+ /* Points at next buffer to be filled by NIC. Chases rx_prod. */
+ unsigned int rx_idx;
+ /* Points at next buffer to be returned to the guest OS. Chases rx_idx. */
+ unsigned int rx_cons;
+
+ /*
+ * Private copy of producer. Follows guest OS version, but never
+ * catches up with our consumer index.
+ */
+ unsigned int tx_prod;
+ /* Points at next buffer to be scheduled. Chases tx_prod. */
+ unsigned int tx_idx;
+ /* Points at next buffer to be returned to the guest OS. Chases tx_idx. */
+ unsigned int tx_cons;
} net_shadow_ring_t;
typedef struct net_vif_st {