On 24 August 2016 at 11:22, Greg KH <gre...@linuxfoundation.org> wrote:
> On Wed, Aug 24, 2016 at 12:03:29AM +0200, Rafał Miłecki wrote:
>> +static ssize_t ports_show(struct device *dev, struct device_attribute *attr,
>> +                       char *buf)
>> +{
>> +     struct led_classdev *led_cdev = dev_get_drvdata(dev);
>> +     struct usbport_trig_data *usbport_data = led_cdev->trigger_data;
>> +     struct usbport_trig_port *port;
>> +     ssize_t ret = 0;
>> +     int len;
>> +
>> +     list_for_each_entry(port, &usbport_data->ports, list) {
>> +             len = sprintf(buf + ret, "%s\n", port->name);
>> +             if (len >= 0)
>> +                     ret += len;
>> +     }
>> +
>> +     return ret;
>> +}
>
> sysfs is "one value per file", here you are listing a bunch of things in
> one sysfs file.  Please don't do that.

OK. What do you think about creating "ports" subdirectory and creating
file-per-port in it? Then I'd need to bring back something like
"new_port" and "remove_port". Does it sound OK?

-- 
Rafał

Reply via email to