diff options
Diffstat (limited to 'drivers/infiniband/hw/qib/qib_verbs.h')
| -rw-r--r-- | drivers/infiniband/hw/qib/qib_verbs.h | 26 | 
1 files changed, 17 insertions, 9 deletions
diff --git a/drivers/infiniband/hw/qib/qib_verbs.h b/drivers/infiniband/hw/qib/qib_verbs.h index 012e2c7575a..bfc8948fdd3 100644 --- a/drivers/infiniband/hw/qib/qib_verbs.h +++ b/drivers/infiniband/hw/qib/qib_verbs.h @@ -150,14 +150,14 @@ struct ib_reth {  	__be64 vaddr;  	__be32 rkey;  	__be32 length; -} __attribute__ ((packed)); +} __packed;  struct ib_atomic_eth {  	__be32 vaddr[2];        /* unaligned so access as 2 32-bit words */  	__be32 rkey;  	__be64 swap_data;  	__be64 compare_data; -} __attribute__ ((packed)); +} __packed;  struct qib_other_headers {  	__be32 bth[3]; @@ -178,7 +178,7 @@ struct qib_other_headers {  		__be32 aeth;  		struct ib_atomic_eth atomic_eth;  	} u; -} __attribute__ ((packed)); +} __packed;  /*   * Note that UD packets with a GRH header are 8+40+12+8 = 68 bytes @@ -195,12 +195,12 @@ struct qib_ib_header {  		} l;  		struct qib_other_headers oth;  	} u; -} __attribute__ ((packed)); +} __packed;  struct qib_pio_header {  	__le32 pbc[2];  	struct qib_ib_header hdr; -} __attribute__ ((packed)); +} __packed;  /*   * There is one struct qib_mcast for each multicast GID. @@ -664,6 +664,13 @@ struct qib_opcode_stats_perctx {  	struct qib_opcode_stats stats[128];  }; +struct qib_pma_counters { +	u64 n_unicast_xmit;     /* total unicast packets sent */ +	u64 n_unicast_rcv;      /* total unicast packets received */ +	u64 n_multicast_xmit;   /* total multicast packets sent */ +	u64 n_multicast_rcv;    /* total multicast packets received */ +}; +  struct qib_ibport {  	struct qib_qp __rcu *qp0;  	struct qib_qp __rcu *qp1; @@ -680,10 +687,11 @@ struct qib_ibport {  	__be64 mkey;  	__be64 guids[QIB_GUIDS_PER_PORT	- 1];	/* writable GUIDs */  	u64 tid;		/* TID for traps */ -	u64 n_unicast_xmit;     /* total unicast packets sent */ -	u64 n_unicast_rcv;      /* total unicast packets received */ -	u64 n_multicast_xmit;   /* total multicast packets sent */ -	u64 n_multicast_rcv;    /* total multicast packets received */ +	struct qib_pma_counters __percpu *pmastats; +	u64 z_unicast_xmit;     /* starting count for PMA */ +	u64 z_unicast_rcv;      /* starting count for PMA */ +	u64 z_multicast_xmit;   /* starting count for PMA */ +	u64 z_multicast_rcv;    /* starting count for PMA */  	u64 z_symbol_error_counter;             /* starting count for PMA */  	u64 z_link_error_recovery_counter;      /* starting count for PMA */  	u64 z_link_downed_counter;              /* starting count for PMA */  | 
