#undef pr_fmt
#define pr_fmt(fmt) …
#include "rtrs-pri.h"
#include "rtrs-clt.h"
#include "rtrs-log.h"
#define MIN_MAX_RECONN_ATT …
#define MAX_MAX_RECONN_ATT …
static void rtrs_clt_path_release(struct kobject *kobj)
{ … }
static struct kobj_type ktype_sess = …;
static void rtrs_clt_path_stats_release(struct kobject *kobj)
{ … }
static struct kobj_type ktype_stats = …;
static ssize_t max_reconnect_attempts_show(struct device *dev,
struct device_attribute *attr,
char *page)
{ … }
static ssize_t max_reconnect_attempts_store(struct device *dev,
struct device_attribute *attr,
const char *buf,
size_t count)
{ … }
static DEVICE_ATTR_RW(max_reconnect_attempts);
static ssize_t mpath_policy_show(struct device *dev,
struct device_attribute *attr,
char *page)
{ … }
static ssize_t mpath_policy_store(struct device *dev,
struct device_attribute *attr,
const char *buf,
size_t count)
{ … }
static DEVICE_ATTR_RW(mpath_policy);
static ssize_t add_path_show(struct device *dev,
struct device_attribute *attr, char *page)
{ … }
static ssize_t add_path_store(struct device *dev,
struct device_attribute *attr,
const char *buf, size_t count)
{ … }
static DEVICE_ATTR_RW(add_path);
static ssize_t rtrs_clt_state_show(struct kobject *kobj,
struct kobj_attribute *attr, char *page)
{ … }
static struct kobj_attribute rtrs_clt_state_attr = …;
static ssize_t rtrs_clt_reconnect_show(struct kobject *kobj,
struct kobj_attribute *attr, char *buf)
{ … }
static ssize_t rtrs_clt_reconnect_store(struct kobject *kobj,
struct kobj_attribute *attr,
const char *buf, size_t count)
{ … }
static struct kobj_attribute rtrs_clt_reconnect_attr = …;
static ssize_t rtrs_clt_disconnect_show(struct kobject *kobj,
struct kobj_attribute *attr, char *buf)
{ … }
static ssize_t rtrs_clt_disconnect_store(struct kobject *kobj,
struct kobj_attribute *attr,
const char *buf, size_t count)
{ … }
static struct kobj_attribute rtrs_clt_disconnect_attr = …;
static ssize_t rtrs_clt_remove_path_show(struct kobject *kobj,
struct kobj_attribute *attr, char *buf)
{ … }
static ssize_t rtrs_clt_remove_path_store(struct kobject *kobj,
struct kobj_attribute *attr,
const char *buf, size_t count)
{ … }
static struct kobj_attribute rtrs_clt_remove_path_attr = …;
STAT_ATTR(…);
STAT_ATTR(…);
STAT_ATTR(…);
STAT_ATTR(…);
STAT_ATTR(…);
static struct attribute *rtrs_clt_stats_attrs[] = …;
static const struct attribute_group rtrs_clt_stats_attr_group = …;
static ssize_t rtrs_clt_hca_port_show(struct kobject *kobj,
struct kobj_attribute *attr,
char *page)
{ … }
static struct kobj_attribute rtrs_clt_hca_port_attr = …;
static ssize_t rtrs_clt_hca_name_show(struct kobject *kobj,
struct kobj_attribute *attr,
char *page)
{ … }
static struct kobj_attribute rtrs_clt_hca_name_attr = …;
static ssize_t rtrs_clt_cur_latency_show(struct kobject *kobj,
struct kobj_attribute *attr,
char *page)
{ … }
static struct kobj_attribute rtrs_clt_cur_latency_attr = …;
static ssize_t rtrs_clt_src_addr_show(struct kobject *kobj,
struct kobj_attribute *attr,
char *page)
{ … }
static struct kobj_attribute rtrs_clt_src_addr_attr = …;
static ssize_t rtrs_clt_dst_addr_show(struct kobject *kobj,
struct kobj_attribute *attr,
char *page)
{ … }
static struct kobj_attribute rtrs_clt_dst_addr_attr = …;
static struct attribute *rtrs_clt_path_attrs[] = …;
static const struct attribute_group rtrs_clt_path_attr_group = …;
int rtrs_clt_create_path_files(struct rtrs_clt_path *clt_path)
{ … }
void rtrs_clt_destroy_path_files(struct rtrs_clt_path *clt_path,
const struct attribute *sysfs_self)
{ … }
static struct attribute *rtrs_clt_attrs[] = …;
static const struct attribute_group rtrs_clt_attr_group = …;
int rtrs_clt_create_sysfs_root_files(struct rtrs_clt_sess *clt)
{ … }
void rtrs_clt_destroy_sysfs_root(struct rtrs_clt_sess *clt)
{ … }