| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | reporter_rx.c | 223 struct devlink_fmsg *fmsg) in mlx5e_reporter_icosq_diagnose() argument 225 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "ICOSQ"); in mlx5e_reporter_icosq_diagnose() 226 devlink_fmsg_u32_pair_put(fmsg, "sqn", icosq->sqn); in mlx5e_reporter_icosq_diagnose() 227 devlink_fmsg_u8_pair_put(fmsg, "HW state", hw_state); in mlx5e_reporter_icosq_diagnose() 228 devlink_fmsg_u32_pair_put(fmsg, "cc", icosq->cc); in mlx5e_reporter_icosq_diagnose() 229 devlink_fmsg_u32_pair_put(fmsg, "pc", icosq->pc); in mlx5e_reporter_icosq_diagnose() 230 devlink_fmsg_u32_pair_put(fmsg, "WQE size", mlx5_wq_cyc_get_size(&icosq->wq)); in mlx5e_reporter_icosq_diagnose() 232 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "CQ"); in mlx5e_reporter_icosq_diagnose() 233 devlink_fmsg_u32_pair_put(fmsg, "cqn", icosq->cq.mcq.cqn); in mlx5e_reporter_icosq_diagnose() 234 devlink_fmsg_u32_pair_put(fmsg, "cc", icosq->cq.wq.cc); in mlx5e_reporter_icosq_diagnose() [all …]
|
| H A D | reporter_tx.c | 53 static void mlx5e_health_sq_put_sw_state(struct devlink_fmsg *fmsg, struct mlx5e_txqsq *sq) in mlx5e_health_sq_put_sw_state() argument 59 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "SW State"); in mlx5e_health_sq_put_sw_state() 62 devlink_fmsg_u32_pair_put(fmsg, sq_sw_state_type_name[i], in mlx5e_health_sq_put_sw_state() 65 mlx5e_health_fmsg_named_obj_nest_end(fmsg); in mlx5e_health_sq_put_sw_state() 263 mlx5e_tx_reporter_build_diagnose_output_sq_common(struct devlink_fmsg *fmsg, in mlx5e_tx_reporter_build_diagnose_output_sq_common() argument 270 devlink_fmsg_u32_pair_put(fmsg, "tc", tc); in mlx5e_tx_reporter_build_diagnose_output_sq_common() 271 devlink_fmsg_u32_pair_put(fmsg, "txq ix", sq->txq_ix); in mlx5e_tx_reporter_build_diagnose_output_sq_common() 272 devlink_fmsg_u32_pair_put(fmsg, "sqn", sq->sqn); in mlx5e_tx_reporter_build_diagnose_output_sq_common() 276 devlink_fmsg_u8_pair_put(fmsg, "HW state", state); in mlx5e_tx_reporter_build_diagnose_output_sq_common() 278 devlink_fmsg_bool_pair_put(fmsg, "stopped", stopped); in mlx5e_tx_reporter_build_diagnose_output_sq_common() [all …]
|
| H A D | health.c | 8 void mlx5e_health_fmsg_named_obj_nest_start(struct devlink_fmsg *fmsg, char *name) in mlx5e_health_fmsg_named_obj_nest_start() argument 10 devlink_fmsg_pair_nest_start(fmsg, name); in mlx5e_health_fmsg_named_obj_nest_start() 11 devlink_fmsg_obj_nest_start(fmsg); in mlx5e_health_fmsg_named_obj_nest_start() 14 void mlx5e_health_fmsg_named_obj_nest_end(struct devlink_fmsg *fmsg) in mlx5e_health_fmsg_named_obj_nest_end() argument 16 devlink_fmsg_obj_nest_end(fmsg); in mlx5e_health_fmsg_named_obj_nest_end() 17 devlink_fmsg_pair_nest_end(fmsg); in mlx5e_health_fmsg_named_obj_nest_end() 20 void mlx5e_health_cq_diag_fmsg(struct mlx5e_cq *cq, struct devlink_fmsg *fmsg) in mlx5e_health_cq_diag_fmsg() argument 30 mlx5e_health_fmsg_named_obj_nest_start(fmsg, "CQ"); in mlx5e_health_cq_diag_fmsg() 31 devlink_fmsg_u32_pair_put(fmsg, "cqn", cq->mcq.cqn); in mlx5e_health_cq_diag_fmsg() 32 devlink_fmsg_u8_pair_put(fmsg, "HW status", hw_status); in mlx5e_health_cq_diag_fmsg() [all …]
|
| H A D | health.h | 23 void mlx5e_health_cq_diag_fmsg(struct mlx5e_cq *cq, struct devlink_fmsg *fmsg); 24 void mlx5e_health_cq_common_diag_fmsg(struct mlx5e_cq *cq, struct devlink_fmsg *fmsg); 25 void mlx5e_health_eq_diag_fmsg(struct mlx5_eq_comp *eq, struct devlink_fmsg *fmsg); 26 void mlx5e_health_fmsg_named_obj_nest_start(struct devlink_fmsg *fmsg, char *name); 27 void mlx5e_health_fmsg_named_obj_nest_end(struct devlink_fmsg *fmsg); 41 int (*dump)(struct mlx5e_priv *priv, struct devlink_fmsg *fmsg, void *ctx); 56 struct devlink_fmsg *fmsg); 57 void mlx5e_health_queue_dump(struct mlx5e_priv *priv, struct devlink_fmsg *fmsg,
|
| /linux/net/devlink/ |
| H A D | health.c | 33 struct devlink_fmsg *fmsg; in devlink_fmsg_alloc() local 35 fmsg = kzalloc_obj(*fmsg); in devlink_fmsg_alloc() 36 if (!fmsg) in devlink_fmsg_alloc() 39 INIT_LIST_HEAD(&fmsg->item_list); in devlink_fmsg_alloc() 41 return fmsg; in devlink_fmsg_alloc() 44 static void devlink_fmsg_free(struct devlink_fmsg *fmsg) in devlink_fmsg_free() argument 48 list_for_each_entry_safe(item, tmp, &fmsg->item_list, list) { in devlink_fmsg_free() 52 kfree(fmsg); in devlink_fmsg_free() 728 static void devlink_fmsg_err_if_binary(struct devlink_fmsg *fmsg) in devlink_fmsg_err_if_binary() argument 730 if (!fmsg->err && fmsg->putting_binary) in devlink_fmsg_err_if_binary() [all …]
|
| /linux/drivers/net/netdevsim/ |
| H A D | health.c | 13 struct devlink_fmsg *fmsg, void *priv_ctx, in nsim_dev_empty_reporter_dump() argument 21 struct devlink_fmsg *fmsg, in nsim_dev_empty_reporter_diagnose() argument 63 static int nsim_dev_dummy_fmsg_put(struct devlink_fmsg *fmsg, u32 binary_len) in nsim_dev_dummy_fmsg_put() argument 68 devlink_fmsg_bool_pair_put(fmsg, "test_bool", true); in nsim_dev_dummy_fmsg_put() 69 devlink_fmsg_u8_pair_put(fmsg, "test_u8", 1); in nsim_dev_dummy_fmsg_put() 70 devlink_fmsg_u32_pair_put(fmsg, "test_u32", 3); in nsim_dev_dummy_fmsg_put() 71 devlink_fmsg_u64_pair_put(fmsg, "test_u64", 4); in nsim_dev_dummy_fmsg_put() 72 devlink_fmsg_string_pair_put(fmsg, "test_string", "somestring"); in nsim_dev_dummy_fmsg_put() 78 devlink_fmsg_binary_pair_put(fmsg, "test_binary", binary, binary_len); in nsim_dev_dummy_fmsg_put() 81 devlink_fmsg_pair_nest_start(fmsg, "test_nest"); in nsim_dev_dummy_fmsg_put() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/diag/ |
| H A D | reporter_vnic.c | 19 struct devlink_fmsg *fmsg, in mlx5_reporter_vnic_diagnose_counter_icm() argument 59 devlink_fmsg_u32_pair_put(fmsg, "icm_consumption", cur_alloc_icm); in mlx5_reporter_vnic_diagnose_counter_icm() 63 struct devlink_fmsg *fmsg, in mlx5_reporter_vnic_diagnose_counters() argument 75 devlink_fmsg_pair_nest_start(fmsg, "vNIC env counters"); in mlx5_reporter_vnic_diagnose_counters() 76 devlink_fmsg_obj_nest_start(fmsg); in mlx5_reporter_vnic_diagnose_counters() 79 devlink_fmsg_u32_pair_put(fmsg, "total_error_queues", in mlx5_reporter_vnic_diagnose_counters() 81 devlink_fmsg_u32_pair_put(fmsg, "send_queue_priority_update_flow", in mlx5_reporter_vnic_diagnose_counters() 85 devlink_fmsg_u32_pair_put(fmsg, "comp_eq_overrun", in mlx5_reporter_vnic_diagnose_counters() 87 devlink_fmsg_u32_pair_put(fmsg, "async_eq_overrun", in mlx5_reporter_vnic_diagnose_counters() 91 devlink_fmsg_u32_pair_put(fmsg, "cq_overrun", in mlx5_reporter_vnic_diagnose_counters() [all …]
|
| H A D | fw_tracer.c | 964 mlx5_devlink_fmsg_fill_trace(struct devlink_fmsg *fmsg, in mlx5_devlink_fmsg_fill_trace() argument 967 devlink_fmsg_obj_nest_start(fmsg); in mlx5_devlink_fmsg_fill_trace() 968 devlink_fmsg_u64_pair_put(fmsg, "timestamp", trace_data->timestamp); in mlx5_devlink_fmsg_fill_trace() 969 devlink_fmsg_bool_pair_put(fmsg, "lost", trace_data->lost); in mlx5_devlink_fmsg_fill_trace() 970 devlink_fmsg_u8_pair_put(fmsg, "event_id", trace_data->event_id); in mlx5_devlink_fmsg_fill_trace() 971 devlink_fmsg_string_pair_put(fmsg, "msg", trace_data->msg); in mlx5_devlink_fmsg_fill_trace() 972 devlink_fmsg_obj_nest_end(fmsg); in mlx5_devlink_fmsg_fill_trace() 976 struct devlink_fmsg *fmsg) in mlx5_fw_tracer_get_saved_traces_objects() argument 993 devlink_fmsg_arr_pair_nest_start(fmsg, "dump fw traces"); in mlx5_fw_tracer_get_saved_traces_objects() 996 mlx5_devlink_fmsg_fill_trace(fmsg, &straces[index]); in mlx5_fw_tracer_get_saved_traces_objects() [all …]
|
| H A D | reporter_vnic.h | 13 struct devlink_fmsg *fmsg,
|
| H A D | fw_tracer.h | 203 struct devlink_fmsg *fmsg);
|
| /linux/drivers/net/ethernet/huawei/hinic/ |
| H A D | hinic_devlink.c | 318 static void chip_fault_show(struct devlink_fmsg *fmsg, in chip_fault_show() argument 328 devlink_fmsg_u32_pair_put(fmsg, "Function level err func_id", in chip_fault_show() 330 devlink_fmsg_u8_pair_put(fmsg, "module_id", event->event.chip.node_id); in chip_fault_show() 331 devlink_fmsg_u32_pair_put(fmsg, "err_type", (u32)event->event.chip.err_type); in chip_fault_show() 332 devlink_fmsg_string_pair_put(fmsg, "err_level", level_str[fault_level]); in chip_fault_show() 333 devlink_fmsg_u32_pair_put(fmsg, "err_csr_addr", in chip_fault_show() 335 devlink_fmsg_u32_pair_put(fmsg, "err_csr_value", in chip_fault_show() 339 static void fault_report_show(struct devlink_fmsg *fmsg, in fault_report_show() argument 349 devlink_fmsg_string_pair_put(fmsg, "Fault type", type_str[fault_type]); in fault_report_show() 350 devlink_fmsg_binary_pair_put(fmsg, "Fault raw data", event->event.val, in fault_report_show() [all …]
|
| /linux/drivers/net/ethernet/intel/ice/devlink/ |
| H A D | health.c | 8 #define ICE_DEVLINK_FMSG_PUT_FIELD(fmsg, obj, name) \ argument 9 devlink_fmsg_put(fmsg, #name, (obj)->name) 119 static void ice_describe_status_code(struct devlink_fmsg *fmsg, in ice_describe_status_code() argument 129 devlink_fmsg_put(fmsg, "Syndrome", status_code); in ice_describe_status_code() 138 devlink_fmsg_string_pair_put(fmsg, "Description", health_code->description); in ice_describe_status_code() 140 devlink_fmsg_string_pair_put(fmsg, "Possible Solution", in ice_describe_status_code() 145 devlink_fmsg_u32_pair_put(fmsg, in ice_describe_status_code() 155 ice_port_reporter_diagnose(struct devlink_health_reporter *reporter, struct devlink_fmsg *fmsg, in ice_port_reporter_diagnose() argument 160 ice_describe_status_code(fmsg, &pf->health_reporters.port_status); in ice_port_reporter_diagnose() 165 ice_port_reporter_dump(struct devlink_health_reporter *reporter, struct devlink_fmsg *fmsg, in ice_port_reporter_dump() argument [all …]
|
| /linux/drivers/net/ethernet/marvell/octeontx2/af/ |
| H A D | rvu_devlink.c | 17 static void rvu_report_pair_start(struct devlink_fmsg *fmsg, const char *name) in rvu_report_pair_start() argument 19 devlink_fmsg_pair_nest_start(fmsg, name); in rvu_report_pair_start() 20 devlink_fmsg_obj_nest_start(fmsg); in rvu_report_pair_start() 23 static void rvu_report_pair_end(struct devlink_fmsg *fmsg) in rvu_report_pair_end() argument 25 devlink_fmsg_obj_nest_end(fmsg); in rvu_report_pair_end() 26 devlink_fmsg_pair_nest_end(fmsg); in rvu_report_pair_end() 272 static int rvu_nix_report_show(struct devlink_fmsg *fmsg, void *ctx, in rvu_nix_report_show() argument 282 rvu_report_pair_start(fmsg, "NIX_AF_RVU"); in rvu_nix_report_show() 283 devlink_fmsg_u64_pair_put(fmsg, "\tNIX RVU Interrupt Reg ", in rvu_nix_report_show() 286 devlink_fmsg_string_put(fmsg, "\n\tUnmap Slot Error"); in rvu_nix_report_show() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | health.c | 465 struct devlink_fmsg *fmsg, in mlx5_fw_reporter_diagnose() argument 473 devlink_fmsg_u8_pair_put(fmsg, "Syndrome", synd); in mlx5_fw_reporter_diagnose() 477 devlink_fmsg_string_pair_put(fmsg, "Description", hsynd_str(synd)); in mlx5_fw_reporter_diagnose() 488 mlx5_fw_reporter_ctx_pairs_put(struct devlink_fmsg *fmsg, in mlx5_fw_reporter_ctx_pairs_put() argument 491 devlink_fmsg_u8_pair_put(fmsg, "syndrome", fw_reporter_ctx->err_synd); in mlx5_fw_reporter_ctx_pairs_put() 492 devlink_fmsg_u32_pair_put(fmsg, "fw_miss_counter", fw_reporter_ctx->miss_counter); in mlx5_fw_reporter_ctx_pairs_put() 497 struct devlink_fmsg *fmsg) in mlx5_fw_reporter_heath_buffer_data_put() argument 507 devlink_fmsg_pair_nest_start(fmsg, "health buffer"); in mlx5_fw_reporter_heath_buffer_data_put() 508 devlink_fmsg_obj_nest_start(fmsg); in mlx5_fw_reporter_heath_buffer_data_put() 509 devlink_fmsg_arr_pair_nest_start(fmsg, "assert_var"); in mlx5_fw_reporter_heath_buffer_data_put() [all …]
|
| H A D | en_rep.c | 1426 struct devlink_fmsg *fmsg, in mlx5e_rep_vnic_reporter_diagnose() argument 1432 mlx5_reporter_vnic_diagnose_counters(rep->esw->dev, fmsg, rep->vport, in mlx5e_rep_vnic_reporter_diagnose()
|
| /linux/drivers/net/ethernet/meta/fbnic/ |
| H A D | fbnic_devlink.c | 374 struct devlink_fmsg *fmsg, void *priv_ctx, in fbnic_fw_reporter_dump() argument 470 devlink_fmsg_binary_pair_nest_start(fmsg, "FW coredump"); in fbnic_fw_reporter_dump() 475 devlink_fmsg_binary_put(fmsg, dump_data + offset, length); in fbnic_fw_reporter_dump() 478 devlink_fmsg_binary_pair_nest_end(fmsg); in fbnic_fw_reporter_dump() 490 struct devlink_fmsg *fmsg, in fbnic_fw_reporter_diagnose() argument 502 devlink_fmsg_pair_nest_start(fmsg, "last_heartbeat"); in fbnic_fw_reporter_diagnose() 503 devlink_fmsg_obj_nest_start(fmsg); in fbnic_fw_reporter_diagnose() 504 devlink_fmsg_pair_nest_start(fmsg, "fw_uptime"); in fbnic_fw_reporter_diagnose() 505 devlink_fmsg_obj_nest_start(fmsg); in fbnic_fw_reporter_diagnose() 506 devlink_fmsg_u32_pair_put(fmsg, "sec", sec); in fbnic_fw_reporter_diagnose() [all …]
|
| /linux/drivers/net/ethernet/amd/pds_core/ |
| H A D | devlink.c | 159 struct devlink_fmsg *fmsg, in pdsc_fw_reporter_diagnose() argument 166 devlink_fmsg_string_pair_put(fmsg, "Status", "dead"); in pdsc_fw_reporter_diagnose() 168 devlink_fmsg_string_pair_put(fmsg, "Status", "unhealthy"); in pdsc_fw_reporter_diagnose() 170 devlink_fmsg_string_pair_put(fmsg, "Status", "healthy"); in pdsc_fw_reporter_diagnose() 173 devlink_fmsg_u32_pair_put(fmsg, "State", in pdsc_fw_reporter_diagnose() 175 devlink_fmsg_u32_pair_put(fmsg, "Generation", pdsc->fw_generation >> 4); in pdsc_fw_reporter_diagnose() 176 devlink_fmsg_u32_pair_put(fmsg, "Recoveries", pdsc->fw_recoveries); in pdsc_fw_reporter_diagnose()
|
| H A D | core.h | 250 struct devlink_fmsg *fmsg,
|
| /linux/drivers/net/ethernet/broadcom/bnxt/ |
| H A D | bnxt_devlink.c | 96 struct devlink_fmsg *fmsg, in bnxt_fw_diagnose() argument 104 devlink_fmsg_string_pair_put(fmsg, "Status", "recovering"); in bnxt_fw_diagnose() 109 devlink_fmsg_string_pair_put(fmsg, "Status", "unknown"); in bnxt_fw_diagnose() 116 devlink_fmsg_string_pair_put(fmsg, "Status", "initializing"); in bnxt_fw_diagnose() 125 devlink_fmsg_string_pair_put(fmsg, "Status", "error"); in bnxt_fw_diagnose() 126 devlink_fmsg_u32_pair_put(fmsg, "Syndrome", fw_status); in bnxt_fw_diagnose() 128 devlink_fmsg_string_pair_put(fmsg, "Status", "healthy"); in bnxt_fw_diagnose() 131 devlink_fmsg_string_pair_put(fmsg, "Severity", in bnxt_fw_diagnose() 135 devlink_fmsg_string_pair_put(fmsg, "Remedy", in bnxt_fw_diagnose() 138 devlink_fmsg_string_pair_put(fmsg, "Impact", in bnxt_fw_diagnose() [all …]
|
| /linux/include/net/ |
| H A D | devlink.h | 815 struct devlink_fmsg *fmsg, void *priv_ctx, 818 struct devlink_fmsg *fmsg, 1342 #define devlink_fmsg_put(fmsg, name, value) ( \ argument 1352 (fmsg, name, (value))) 1958 void devlink_fmsg_obj_nest_start(struct devlink_fmsg *fmsg); 1959 void devlink_fmsg_obj_nest_end(struct devlink_fmsg *fmsg); 1961 void devlink_fmsg_pair_nest_start(struct devlink_fmsg *fmsg, const char *name); 1962 void devlink_fmsg_pair_nest_end(struct devlink_fmsg *fmsg); 1964 void devlink_fmsg_arr_pair_nest_start(struct devlink_fmsg *fmsg, 1966 void devlink_fmsg_arr_pair_nest_end(struct devlink_fmsg *fmsg); [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlxsw/ |
| H A D | core.c | 1810 struct devlink_fmsg *fmsg) in mlxsw_core_health_fw_fatal_dump_fatal_cause() argument 1815 devlink_fmsg_u32_pair_put(fmsg, "cause_id", val); in mlxsw_core_health_fw_fatal_dump_fatal_cause() 1819 devlink_fmsg_u8_pair_put(fmsg, "tile_index", val); in mlxsw_core_health_fw_fatal_dump_fatal_cause() 1825 struct devlink_fmsg *fmsg) in mlxsw_core_health_fw_fatal_dump_fw_assert() argument 1830 devlink_fmsg_u32_pair_put(fmsg, "var0", val); in mlxsw_core_health_fw_fatal_dump_fw_assert() 1832 devlink_fmsg_u32_pair_put(fmsg, "var1", val); in mlxsw_core_health_fw_fatal_dump_fw_assert() 1834 devlink_fmsg_u32_pair_put(fmsg, "var2", val); in mlxsw_core_health_fw_fatal_dump_fw_assert() 1836 devlink_fmsg_u32_pair_put(fmsg, "var3", val); in mlxsw_core_health_fw_fatal_dump_fw_assert() 1838 devlink_fmsg_u32_pair_put(fmsg, "var4", val); in mlxsw_core_health_fw_fatal_dump_fw_assert() 1840 devlink_fmsg_u32_pair_put(fmsg, "existptr", val); in mlxsw_core_health_fw_fatal_dump_fw_assert() [all …]
|
| /linux/Documentation/networking/devlink/ |
| H A D | devlink-health.rst | 60 to fill the data in using the devlink fmsg API. 62 Devlink fmsg is a mechanism to pass descriptors between drivers and devlink, in 67 Driver should use this API to fill the fmsg context in a format which will be
|
| /linux/drivers/net/ethernet/qlogic/qed/ |
| H A D | qed_devlink.c | 38 struct devlink_fmsg *fmsg, void *priv_ctx, in qed_fw_fatal_reporter_dump() argument 69 devlink_fmsg_binary_pair_put(fmsg, "dump_data", p_dbg_data_buf, in qed_fw_fatal_reporter_dump()
|