Support SW stats with debugfs. Query output: $ cat /sys/kernel/debug/hns_roce/hns_0/sw_stat/sw_stat aeqe --- 3341 ceqe --- 0 cmds --- 6764 cmds_err --- 0 posted_mbx --- 3344 polled_mbx --- 3 mbx_event --- 3341 qp_create_err --- 0 qp_modify_err --- 0 cq_create_err --- 0 cq_modify_err --- 0 srq_create_err --- 0 srq_modify_err --- 0 xrcd_alloc_err --- 0 mr_reg_err --- 0 mr_rereg_err --- 0 ah_create_err --- 0 mmap_err --- 0 uctx_alloc_err --- 0 Signed-off-by: Junxian Huang <huangjunxian6@hisilicon.com> Signed-off-by: Chengchang Tang <tangchengchang@huawei.com> Link: https://lore.kernel.org/r/20231114123449.1106162-4-huangjunxian6@hisilicon.com Signed-off-by: Leon Romanovsky <leon@kernel.org>
34 lines
704 B
C
34 lines
704 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (c) 2023 Hisilicon Limited.
|
|
*/
|
|
|
|
#ifndef __HNS_ROCE_DEBUGFS_H
|
|
#define __HNS_ROCE_DEBUGFS_H
|
|
|
|
/* debugfs seqfile */
|
|
struct hns_debugfs_seqfile {
|
|
int (*read)(struct seq_file *seq, void *data);
|
|
void *data;
|
|
};
|
|
|
|
struct hns_sw_stat_debugfs {
|
|
struct dentry *root;
|
|
struct hns_debugfs_seqfile sw_stat;
|
|
};
|
|
|
|
/* Debugfs for device */
|
|
struct hns_roce_dev_debugfs {
|
|
struct dentry *root;
|
|
struct hns_sw_stat_debugfs sw_stat_root;
|
|
};
|
|
|
|
struct hns_roce_dev;
|
|
|
|
void hns_roce_init_debugfs(void);
|
|
void hns_roce_cleanup_debugfs(void);
|
|
void hns_roce_register_debugfs(struct hns_roce_dev *hr_dev);
|
|
void hns_roce_unregister_debugfs(struct hns_roce_dev *hr_dev);
|
|
|
|
#endif
|