Re: [PATCH v6 08/25] rtrs: client: sysfs interface functions

Bart Van Assche
2020-01-02T21:14:26Z

On 12/30/19 2:29 AM, Jack Wang wrote:
> +static struct kobj_type ktype = {
> + .sysfs_ops = &kobj_sysfs_ops,
> +};

Can this data structure be declared 'const'?

> +static ssize_t max_reconnect_attempts_show(struct device *dev,
> + struct device_attribute *attr,
> + char *page)
> +{
> + struct rtrs_clt *clt;
> +
> + clt = container_of(dev, struct rtrs_clt, dev);

If the above two statements would be combined into a single statement,
does the result still fit in 80 columns? If so, please combine these two
statements into a single statement.

> +static ssize_t max_reconnect_attempts_store(struct device *dev,
> + struct device_attribute *attr,
> + const char *buf,
> + size_t count)
> +{
> + struct rtrs_clt *clt;
> + int value;
> + int ret;
> +
> + clt = container_of(dev, struct rtrs_clt, dev);

Same comment here and also for other uses of 'clt': how about combining
the declaration and initialization of 'clt' into a single line of code?

> +static ssize_t mpath_policy_show(struct device *dev,
> + struct device_attribute *attr,
> + char *page)
> +{
> + struct rtrs_clt *clt;
> +
> + clt = container_of(dev, struct rtrs_clt, dev);
> +
> + switch (clt->mp_policy) {
> + case MP_POLICY_RR:
> + return sprintf(page, "round-robin (RR: %d)\n", clt->mp_policy);
> + case MP_POLICY_MIN_INFLIGHT:
> + return sprintf(page, "min-inflight (MI: %d)\n", clt->mp_policy);
> + default:
> + return sprintf(page, "Unknown (%d)\n", clt->mp_policy);
> + }
> +}

Is the above show function compatible with the sysfs one-value-per-file
rule?

> +static struct kobj_attribute rtrs_clt_remove_path_attr =
> + __ATTR(remove_path, 0644, rtrs_clt_remove_path_show,
> + rtrs_clt_remove_path_store);

Could __ATTR_RW() have been used here?

> +static struct kobj_attribute rtrs_clt_src_addr_attr =
> + __ATTR(src_addr, 0444, rtrs_clt_src_addr_show, NULL);

Could __ATTR_RO() have been used here?

> +static struct attribute_group rtrs_clt_sess_attr_group = {
> + .attrs = rtrs_clt_sess_attrs,
> +};

Can this data structure be declared 'const'?

Thanks,

Bart.