summaryrefslogtreecommitdiff
path: root/usr/src/uts/sun4v/sys/vnet_gen.h
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/sun4v/sys/vnet_gen.h')
-rw-r--r--usr/src/uts/sun4v/sys/vnet_gen.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/usr/src/uts/sun4v/sys/vnet_gen.h b/usr/src/uts/sun4v/sys/vnet_gen.h
index 6c04c3cfe0..577667762b 100644
--- a/usr/src/uts/sun4v/sys/vnet_gen.h
+++ b/usr/src/uts/sun4v/sys/vnet_gen.h
@@ -180,6 +180,7 @@ typedef struct vgen_ldc {
kmutex_t tclock; /* tx reclaim lock */
kmutex_t wrlock; /* sync transmits */
kmutex_t rxlock; /* sync reception */
+ kmutex_t pollq_lock; /* sync polling and rxworker */
/* channel info from ldc layer */
uint64_t ldc_id; /* channel number */
@@ -248,6 +249,11 @@ typedef struct vgen_ldc {
kmutex_t rcv_thr_lock; /* lock for receive thread */
kcondvar_t rcv_thr_cv; /* cond.var for recv thread */
+ /* receive polling fields */
+ boolean_t polling_on; /* polling enabled ? */
+ mblk_t *pollq_headp; /* head of pkts in pollq */
+ mblk_t *pollq_tailp; /* tail of pkts in pollq */
+
/* channel statistics */
vgen_stats_t stats; /* channel statistics */
kstat_t *ksp; /* channel kstats */