net/mlx5: FW tracer, Add debug prints
authorSaeed Mahameed <saeedm@mellanox.com>
Thu, 3 May 2018 23:44:46 +0000 (16:44 -0700)
committerSaeed Mahameed <saeedm@mellanox.com>
Mon, 23 Jul 2018 22:01:11 +0000 (15:01 -0700)
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/diag/fw_tracer.c

index 309842de272c2330bfa8d58e558e529d4bfdb139..d4ec93bde4dedbaeca4bb5976c705a3ea6b83f82 100644 (file)
@@ -629,14 +629,14 @@ static void mlx5_fw_tracer_handle_traces(struct work_struct *work)
        u64 block_timestamp, last_block_timestamp, tmp_trace_block[TRACES_PER_BLOCK];
        u32 block_count, start_offset, prev_start_offset, prev_consumer_index;
        u32 trace_event_size = MLX5_ST_SZ_BYTES(tracer_event);
        u64 block_timestamp, last_block_timestamp, tmp_trace_block[TRACES_PER_BLOCK];
        u32 block_count, start_offset, prev_start_offset, prev_consumer_index;
        u32 trace_event_size = MLX5_ST_SZ_BYTES(tracer_event);
+       struct mlx5_core_dev *dev = tracer->dev;
        struct tracer_event tracer_event;
        struct tracer_event tracer_event;
-       struct mlx5_core_dev *dev;
        int i;
 
        int i;
 
+       mlx5_core_dbg(dev, "FWTracer: Handle Trace event, owner=(%d)\n", tracer->owner);
        if (!tracer->owner)
                return;
 
        if (!tracer->owner)
                return;
 
-       dev = tracer->dev;
        block_count = tracer->buff.size / TRACER_BLOCK_SIZE_BYTE;
        start_offset = tracer->buff.consumer_index * TRACER_BLOCK_SIZE_BYTE;
 
        block_count = tracer->buff.size / TRACER_BLOCK_SIZE_BYTE;
        start_offset = tracer->buff.consumer_index * TRACER_BLOCK_SIZE_BYTE;
 
@@ -762,6 +762,7 @@ static int mlx5_fw_tracer_start(struct mlx5_fw_tracer *tracer)
                goto release_ownership;
        }
 
                goto release_ownership;
        }
 
+       mlx5_core_dbg(dev, "FWTracer: Ownership granted and active\n");
        return 0;
 
 release_ownership:
        return 0;
 
 release_ownership:
@@ -774,6 +775,7 @@ static void mlx5_fw_tracer_ownership_change(struct work_struct *work)
        struct mlx5_fw_tracer *tracer =
                container_of(work, struct mlx5_fw_tracer, ownership_change_work);
 
        struct mlx5_fw_tracer *tracer =
                container_of(work, struct mlx5_fw_tracer, ownership_change_work);
 
+       mlx5_core_dbg(tracer->dev, "FWTracer: ownership changed, current=(%d)\n", tracer->owner);
        if (tracer->owner) {
                tracer->owner = false;
                tracer->buff.consumer_index = 0;
        if (tracer->owner) {
                tracer->owner = false;
                tracer->buff.consumer_index = 0;
@@ -830,6 +832,8 @@ struct mlx5_fw_tracer *mlx5_fw_tracer_create(struct mlx5_core_dev *dev)
                goto free_log_buf;
        }
 
                goto free_log_buf;
        }
 
+       mlx5_core_dbg(dev, "FWTracer: Tracer created\n");
+
        return tracer;
 
 free_log_buf:
        return tracer;
 
 free_log_buf:
@@ -887,6 +891,9 @@ void mlx5_fw_tracer_cleanup(struct mlx5_fw_tracer *tracer)
        if (IS_ERR_OR_NULL(tracer))
                return;
 
        if (IS_ERR_OR_NULL(tracer))
                return;
 
+       mlx5_core_dbg(tracer->dev, "FWTracer: Cleanup, is owner ? (%d)\n",
+                     tracer->owner);
+
        cancel_work_sync(&tracer->ownership_change_work);
        cancel_work_sync(&tracer->handle_traces_work);
 
        cancel_work_sync(&tracer->ownership_change_work);
        cancel_work_sync(&tracer->handle_traces_work);
 
@@ -903,6 +910,8 @@ void mlx5_fw_tracer_destroy(struct mlx5_fw_tracer *tracer)
        if (IS_ERR_OR_NULL(tracer))
                return;
 
        if (IS_ERR_OR_NULL(tracer))
                return;
 
+       mlx5_core_dbg(tracer->dev, "FWTracer: Destroy\n");
+
        cancel_work_sync(&tracer->read_fw_strings_work);
        mlx5_fw_tracer_clean_ready_list(tracer);
        mlx5_fw_tracer_clean_print_hash(tracer);
        cancel_work_sync(&tracer->read_fw_strings_work);
        mlx5_fw_tracer_clean_ready_list(tracer);
        mlx5_fw_tracer_clean_print_hash(tracer);