Lines Matching full:smc
3 * Shared Memory Communications over RDMA (SMC-R) and RoCE
5 * Macros for SMC statistics
18 #include <linux/smc.h>
87 struct smc_stats_tech smc[2]; member
100 this_cpu_inc((*stats).smc[t].key ## _cnt); \
105 this_cpu_inc((*stats).smc[t].key ## _pd.buf[_pos]); \
106 this_cpu_add((*stats).smc[t].key ## _bytes, r); \
114 struct smc_stats __percpu *_smc_stats = _net->smc.smc_stats; \
129 struct smc_stats __percpu *_smc_stats = _net->smc.smc_stats; \
153 this_cpu_inc((*stats).smc[t].k ## _rmbsize.buf[_pos]); \
154 this_cpu_add((*stats).smc[t].k ## _rmbuse, _l); \
156 this_cpu_sub((*stats).smc[t].k ## _rmbuse, _l); \
162 this_cpu_inc((*(_smc_stats)).smc[t].rmb ## _ ## key.type ## _cnt)
167 struct smc_stats __percpu *_smc_stats = _net->smc.smc_stats; \
186 struct smc_stats __percpu *_smc_stats = net->smc.smc_stats; \
200 #define SMC_STAT_BUF_REUSE(smc, is_smcd, is_rx) \ argument
201 SMC_STAT_RMB(smc, reuse, is_smcd, is_rx)
203 #define SMC_STAT_RMB_ALLOC(smc, is_smcd, is_rx) \ argument
204 SMC_STAT_RMB(smc, alloc, is_smcd, is_rx)
206 #define SMC_STAT_RMB_DOWNGRADED(smc, is_smcd, is_rx) \ argument
207 SMC_STAT_RMB(smc, dgrade, is_smcd, is_rx)
209 #define SMC_STAT_RMB_TX_PEER_FULL(smc, is_smcd) \ argument
210 SMC_STAT_RMB(smc, buf_full_peer, is_smcd, false)
212 #define SMC_STAT_RMB_TX_FULL(smc, is_smcd) \ argument
213 SMC_STAT_RMB(smc, buf_full, is_smcd, false)
215 #define SMC_STAT_RMB_TX_PEER_SIZE_SMALL(smc, is_smcd) \ argument
216 SMC_STAT_RMB(smc, buf_size_small_peer, is_smcd, false)
218 #define SMC_STAT_RMB_TX_SIZE_SMALL(smc, is_smcd) \ argument
219 SMC_STAT_RMB(smc, buf_size_small, is_smcd, false)
221 #define SMC_STAT_RMB_RX_SIZE_SMALL(smc, is_smcd) \ argument
222 SMC_STAT_RMB(smc, buf_size_small, is_smcd, true)
224 #define SMC_STAT_RMB_RX_FULL(smc, is_smcd) \ argument
225 SMC_STAT_RMB(smc, buf_full, is_smcd, true)
232 struct smc_stats __percpu *smc_stats = net->smc.smc_stats; \
234 this_cpu_inc(smc_stats->smc[SMC_TYPE_D].type); \
236 this_cpu_inc(smc_stats->smc[SMC_TYPE_R].type); \
245 struct smc_stats __percpu *smc_stats = (net)->smc.smc_stats; \
247 this_cpu_inc(smc_stats->smc[SMC_TYPE_D].clnt_v2_succ_cnt); \
249 this_cpu_inc(smc_stats->smc[SMC_TYPE_R].clnt_v2_succ_cnt); \
251 this_cpu_inc(smc_stats->smc[SMC_TYPE_D].clnt_v1_succ_cnt); \
253 this_cpu_inc(smc_stats->smc[SMC_TYPE_R].clnt_v1_succ_cnt); \
263 typeof(net->smc.smc_stats) smc_stats = (net)->smc.smc_stats; \
265 this_cpu_inc(smc_stats->smc[SMC_TYPE_D].srv_v2_succ_cnt); \
267 this_cpu_inc(smc_stats->smc[SMC_TYPE_R].srv_v2_succ_cnt); \
269 this_cpu_inc(smc_stats->smc[SMC_TYPE_D].srv_v1_succ_cnt); \
271 this_cpu_inc(smc_stats->smc[SMC_TYPE_R].srv_v1_succ_cnt); \