Lines Matching refs:fmsg

53 static void mlx5e_health_sq_put_sw_state(struct devlink_fmsg *fmsg, struct mlx5e_txqsq *sq)
59 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "SW State");
62 devlink_fmsg_u32_pair_put(fmsg, sq_sw_state_type_name[i],
65 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
225 mlx5e_tx_reporter_build_diagnose_output_sq_common(struct devlink_fmsg *fmsg,
232 devlink_fmsg_u32_pair_put(fmsg, "tc", tc);
233 devlink_fmsg_u32_pair_put(fmsg, "txq ix", sq->txq_ix);
234 devlink_fmsg_u32_pair_put(fmsg, "sqn", sq->sqn);
238 devlink_fmsg_u8_pair_put(fmsg, "HW state", state);
240 devlink_fmsg_bool_pair_put(fmsg, "stopped", stopped);
241 devlink_fmsg_u32_pair_put(fmsg, "cc", sq->cc);
242 devlink_fmsg_u32_pair_put(fmsg, "pc", sq->pc);
243 mlx5e_health_sq_put_sw_state(fmsg, sq);
244 mlx5e_health_cq_diag_fmsg(&sq->cq, fmsg);
245 mlx5e_health_eq_diag_fmsg(sq->cq.mcq.eq, fmsg);
249 mlx5e_tx_reporter_build_diagnose_output(struct devlink_fmsg *fmsg,
252 devlink_fmsg_obj_nest_start(fmsg);
253 devlink_fmsg_u32_pair_put(fmsg, "channel ix", sq->ch_ix);
254 mlx5e_tx_reporter_build_diagnose_output_sq_common(fmsg, sq, tc);
255 devlink_fmsg_obj_nest_end(fmsg);
259 mlx5e_tx_reporter_build_diagnose_output_ptpsq(struct devlink_fmsg *fmsg,
262 devlink_fmsg_obj_nest_start(fmsg);
263 devlink_fmsg_string_pair_put(fmsg, "channel", "ptp");
264 mlx5e_tx_reporter_build_diagnose_output_sq_common(fmsg, &ptpsq->txqsq, tc);
265 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "Port TS");
266 mlx5e_health_cq_diag_fmsg(&ptpsq->ts_cq, fmsg);
267 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
268 devlink_fmsg_obj_nest_end(fmsg);
272 mlx5e_tx_reporter_diagnose_generic_txqsq(struct devlink_fmsg *fmsg,
279 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "SQ");
280 devlink_fmsg_u64_pair_put(fmsg, "stride size", sq_stride);
281 devlink_fmsg_u32_pair_put(fmsg, "size", sq_sz);
282 devlink_fmsg_string_pair_put(fmsg, "ts_format", real_time ? "RT" : "FRC");
283 mlx5e_health_cq_common_diag_fmsg(&txqsq->cq, fmsg);
284 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
288 mlx5e_tx_reporter_diagnose_generic_tx_port_ts(struct devlink_fmsg *fmsg,
291 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "Port TS");
292 mlx5e_health_cq_common_diag_fmsg(&ptpsq->ts_cq, fmsg);
293 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
298 struct devlink_fmsg *fmsg)
305 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "Common Config");
306 mlx5e_tx_reporter_diagnose_generic_txqsq(fmsg, generic_sq);
312 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "PTP");
313 mlx5e_tx_reporter_diagnose_generic_txqsq(fmsg, &generic_ptpsq->txqsq);
314 mlx5e_tx_reporter_diagnose_generic_tx_port_ts(fmsg, generic_ptpsq);
315 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
317 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
321 struct devlink_fmsg *fmsg,
334 mlx5e_tx_reporter_diagnose_common_config(reporter, fmsg);
335 devlink_fmsg_arr_pair_nest_start(fmsg, "SQs");
343 mlx5e_tx_reporter_build_diagnose_output(fmsg, sq, tc);
351 mlx5e_tx_reporter_build_diagnose_output_ptpsq(fmsg,
356 devlink_fmsg_arr_pair_nest_end(fmsg);
362 static int mlx5e_tx_reporter_dump_sq(struct mlx5e_priv *priv, struct devlink_fmsg *fmsg,
371 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "SX Slice");
374 mlx5e_health_rsc_fmsg_dump(priv, &key, fmsg);
375 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
377 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "SQ");
378 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "QPC");
382 mlx5e_health_rsc_fmsg_dump(priv, &key, fmsg);
383 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
385 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "send_buff");
388 mlx5e_health_rsc_fmsg_dump(priv, &key, fmsg);
389 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
391 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
396 static int mlx5e_tx_reporter_timeout_dump(struct mlx5e_priv *priv, struct devlink_fmsg *fmsg,
401 return mlx5e_tx_reporter_dump_sq(priv, fmsg, to_ctx->sq);
405 struct devlink_fmsg *fmsg,
410 return mlx5e_tx_reporter_dump_sq(priv, fmsg, &ptpsq->txqsq);
414 struct devlink_fmsg *fmsg)
423 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "SX Slice");
426 mlx5e_health_rsc_fmsg_dump(priv, &key, fmsg);
427 mlx5e_health_fmsg_named_obj_nest_end(fmsg);
428 devlink_fmsg_arr_pair_nest_start(fmsg, "SQs");
436 mlx5e_health_queue_dump(priv, fmsg, sq->sqn, "SQ");
444 mlx5e_health_queue_dump(priv, fmsg, sq->sqn, "PTP SQ");
448 devlink_fmsg_arr_pair_nest_end(fmsg);
454 struct devlink_fmsg *fmsg)
456 return err_ctx->dump(priv, fmsg, err_ctx->ctx);
460 struct devlink_fmsg *fmsg, void *context,
466 return err_ctx ? mlx5e_tx_reporter_dump_from_ctx(priv, err_ctx, fmsg) :
467 mlx5e_tx_reporter_dump_all_sqs(priv, fmsg);