From: Sean Anderson <sean.anderson@linux.dev>
To: Guenter Roeck <linux@roeck-us.net>,
Jonathan Cameron <jic23@kernel.org>,
Jean Delvare <jdelvare@suse.com>,
linux-iio@vger.kernel.org, linux-hwmon@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, Lars-Peter Clausen <lars@metafoo.de>
Subject: Re: [PATCH v2 2/2] hwmon: iio: Add labels from IIO channels
Date: Mon, 24 Jun 2024 15:34:46 -0400 [thread overview]
Message-ID: <63046df2-e1fb-442b-a55f-2a9847c6c59e@linux.dev> (raw)
In-Reply-To: <ff43e01e-5a26-4b75-bfaa-ed3ad4395e7c@roeck-us.net>
On 6/24/24 14:47, Guenter Roeck wrote:
> On 6/24/24 10:46, Sean Anderson wrote:
>> Add labels from IIO channels to our channels. This allows userspace to
>> display more meaningful names instead of "in0" or "temp5".
>>
>> Although lm-sensors gracefully handles errors when reading channel
>> labels, the ABI says the label attribute
>>
>>> Should only be created if the driver has hints about what this voltage
>>> channel is being used for, and user-space doesn't.
>>
>> Therefore, we test to see if the channel has a label before
>> creating the attribute.
>>
>
> FWIW, complaining about an ABI really does not belong into a commit
> message. Maybe you and lm-sensors don't care about error returns when
> reading a label, but there are other userspace applications which may
> expect drivers to follow the ABI. Last time I checked, the basic rule
> was still "Don't break userspace", and that doesn't mean "it's ok to
> violate / break an ABI as long as no one notices".
This isn't complaining about the ABI, just documenting the reason it was
done this way...
>> Signed-off-by: Sean Anderson <sean.anderson@linux.dev>
>> ---
>>
>> Changes in v2:
>> - Check if the label exists before creating the attribute
>>
>> drivers/hwmon/iio_hwmon.c | 45 ++++++++++++++++++++++++++++++++++-----
>> 1 file changed, 40 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/hwmon/iio_hwmon.c b/drivers/hwmon/iio_hwmon.c
>> index 4c8a80847891..5722cb9d81f9 100644
>> --- a/drivers/hwmon/iio_hwmon.c
>> +++ b/drivers/hwmon/iio_hwmon.c
>> @@ -33,6 +33,17 @@ struct iio_hwmon_state {
>> struct attribute **attrs;
>> };
>> +static ssize_t iio_hwmon_read_label(struct device *dev,
>> + struct device_attribute *attr,
>> + char *buf)
>> +{
>> + struct sensor_device_attribute *sattr = to_sensor_dev_attr(attr);
>> + struct iio_hwmon_state *state = dev_get_drvdata(dev);
>> + struct iio_channel *chan = &state->channels[sattr->index];
>> +
>> + return iio_read_channel_label(chan, buf);
>> +}
>> +
>
> I personally find it a bit kludgy that an in-kernel API would do a
> sysfs write like this and expect a page-aligned buffer as parameter,
> but since Jonathan is fine with it:
This is also how the in-kernel iio_read_channel_ext_info API works.
I agree that it is a strange API, but I do not want to rewrite all
the implementing drivers.
--Sean
> Acked-by: Guenter Roeck <linux@roeck-us.net>
>
> Jonathan, please apply through your tree.
>
> Thanks,
> Guenter
>
next prev parent reply other threads:[~2024-06-24 19:34 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-24 17:45 [PATCH v2 0/2] hwmon: iio: Add labels Sean Anderson
2024-06-24 17:46 ` [PATCH v2 1/2] iio: Add iio_read_channel_label to inkern API Sean Anderson
2024-06-24 17:46 ` [PATCH v2 2/2] hwmon: iio: Add labels from IIO channels Sean Anderson
2024-06-24 18:47 ` Guenter Roeck
2024-06-24 19:24 ` Jonathan Cameron
2024-06-27 18:37 ` Sean Anderson
2024-06-28 19:08 ` Jonathan Cameron
2024-06-24 19:34 ` Sean Anderson [this message]
2024-06-24 20:05 ` Guenter Roeck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=63046df2-e1fb-442b-a55f-2a9847c6c59e@linux.dev \
--to=sean.anderson@linux.dev \
--cc=jdelvare@suse.com \
--cc=jic23@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@roeck-us.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.