diff options
author | Jiri Pirko <jiri@mellanox.com> | 2019-10-10 15:18:50 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-10-11 21:02:30 -0700 |
commit | 82c93a87bf8bc0cdb5ec2ab99da7d87715ff889f (patch) | |
tree | bd0edc2d995559ac5c57fcf25009ccf127ea2785 /drivers/net/netdevsim/netdevsim.h | |
parent | e7a981050a7fb9a14b652365c00d9c5a025704ce (diff) | |
download | lwn-82c93a87bf8bc0cdb5ec2ab99da7d87715ff889f.tar.gz lwn-82c93a87bf8bc0cdb5ec2ab99da7d87715ff889f.zip |
netdevsim: implement couple of testing devlink health reporters
Implement "empty" and "dummy" reporters. The first one is really simple
and does nothing. The other one has debugfs files to trigger breakage
and it is able to do recovery. The ops also implement dummy fmsg
content.
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/netdevsim/netdevsim.h')
-rw-r--r-- | drivers/net/netdevsim/netdevsim.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/net/netdevsim/netdevsim.h b/drivers/net/netdevsim/netdevsim.h index 24358385d869..94df795ef4d3 100644 --- a/drivers/net/netdevsim/netdevsim.h +++ b/drivers/net/netdevsim/netdevsim.h @@ -134,6 +134,18 @@ enum nsim_resource_id { NSIM_RESOURCE_IPV6_FIB_RULES, }; +struct nsim_dev_health { + struct devlink_health_reporter *empty_reporter; + struct devlink_health_reporter *dummy_reporter; + struct dentry *ddir; + char *recovered_break_msg; + u32 binary_len; + bool fail_recover; +}; + +int nsim_dev_health_init(struct nsim_dev *nsim_dev, struct devlink *devlink); +void nsim_dev_health_exit(struct nsim_dev *nsim_dev); + struct nsim_dev_port { struct list_head list; struct devlink_port devlink_port; @@ -164,6 +176,7 @@ struct nsim_dev { bool dont_allow_reload; bool fail_reload; struct devlink_region *dummy_region; + struct nsim_dev_health health; }; static inline struct net *nsim_dev_net(struct nsim_dev *nsim_dev) |