[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [GIT/PATCH v5] xen network backend driver
Le lundi 14 mars 2011 Ã 14:27 +0000, Ian Campbell a Ãcrit : ... > +struct xenvif { > + /* Unique identifier for this interface. */ > + domid_t domid; > + unsigned int handle; > + > + /* Reference to netback processing backend. */ > + struct xen_netbk *netbk; > + > + u8 fe_dev_addr[6]; > + > + /* Physical parameters of the comms window. */ > + grant_handle_t tx_shmem_handle; > + grant_ref_t tx_shmem_ref; > + grant_handle_t rx_shmem_handle; > + grant_ref_t rx_shmem_ref; > + unsigned int irq; > + > + /* List of frontends to notify after a batch of frames sent. */ > + struct list_head notify_list; > + > + /* The shared rings and indexes. */ > + struct xen_netif_tx_back_ring tx; > + struct xen_netif_rx_back_ring rx; > + struct vm_struct *tx_comms_area; > + struct vm_struct *rx_comms_area; > + > + /* Flags that must not be set in dev->features */ > + u32 features_disabled; > + > + /* Frontend feature information. */ > + u8 can_sg:1; > + u8 gso:1; > + u8 gso_prefix:1; > + u8 csum:1; > + > + /* Internal feature information. */ > + u8 can_queue:1; /* can queue packets for receiver? */ > + > + /* > + * Allow xenvif_start_xmit() to peek ahead in the rx request > + * ring. This is a prediction of what rx_req_cons will be > + * once all queued skbs are put on the ring. > + */ > + RING_IDX rx_req_cons_peek; > + > + /* Transmit shaping: allow 'credit_bytes' every 'credit_usec'. */ > + unsigned long credit_bytes; > + unsigned long credit_usec; > + unsigned long remaining_credit; > + struct timer_list credit_timeout; > + > + /* Statistics */ > + unsigned long rx_gso_checksum_fixup; this is an "unsigned long" field > + > + /* Miscellaneous private stuff. */ > + struct list_head schedule_list; > + atomic_t refcnt; > + struct net_device *dev; > + > + wait_queue_head_t waiting_to_free; > +}; > + > +static void xenvif_get_ethtool_stats(struct net_device *dev, > + struct ethtool_stats *stats, u64 * data) > +{ > + void *vif = netdev_priv(dev); > + int i; > + > + for (i = 0; i < ARRAY_SIZE(xenvif_stats); i++) > + data[i] = *(int *)(vif + xenvif_stats[i].offset); so use : data[i] = *(unsigned long *)(vif + xenvif_stats[i].offset); > +} > + _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |