[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHp75VfEN4HAX=BUZNp+-kKD1B1WVU2oeG2SXyaw=EWVa-CAhA@mail.gmail.com>
Date: Mon, 29 Mar 2021 17:51:01 +0300
From: Andy Shevchenko <andy.shevchenko@...il.com>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: Daniel Scally <djrscally@...il.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux Media Mailing List <linux-media@...r.kernel.org>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Yong Zhi <yong.zhi@...el.com>,
Sakari Ailus <sakari.ailus@...ux.intel.com>,
Bingbu Cao <bingbu.cao@...el.com>,
Tianshu Qiu <tian.shu.qiu@...el.com>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Heikki Krogerus <heikki.krogerus@...ux.intel.com>
Subject: Re: [PATCH v1 3/8] software node: Show properties and their values in sysfs
On Mon, Mar 29, 2021 at 4:46 PM Greg Kroah-Hartman
<gregkh@...uxfoundation.org> wrote:
> On Mon, Mar 29, 2021 at 04:01:18PM +0300, Andy Shevchenko wrote:
> > On Sun, Mar 28, 2021 at 03:02:24PM +0200, Greg Kroah-Hartman wrote:
> > > On Sun, Mar 28, 2021 at 03:56:26PM +0300, Andy Shevchenko wrote:
> > > > On Sun, Mar 28, 2021 at 9:47 AM Greg Kroah-Hartman
> > > > <gregkh@...uxfoundation.org> wrote:
> > > > > On Sun, Mar 28, 2021 at 12:20:07AM +0200, Andy Shevchenko wrote:
> > > > > > It's very convenient to see what properties and their values
> > > > > > are currently being assigned in the registered software nodes.
...
> > > > > > + for (i = 0; i < prop->length / sizeof(u8); i++)
> > > > > > + len += sysfs_emit_at(buf, len, "%u,", ((u8 *)pointer)[i]);
> > > > >
> > > > > No, sysfs is "one value per file", and that is not what you are showing
> > > > > here at all :(
> > > >
> > > > It is following: it's a "one value" for property in question,
> > > >
> > > > As we may read in [1]: "...so it is socially acceptable to express an
> > > > array of values of the same type."
> > > >
> > > > And here is exactly the case: *values of the same type*.
> > >
> > > So what is it going to look like exactly?
> >
> > Basically we have two approaches (already done in the kernel!) use space or
> > comma for a separator. So:
> > - for boolean it will be an empty string (and it's one value always)
> > - for integers it will be, for example, '0,1,2' (w/o single quotes)
> > for property array with values 0, 1, and 2
> > - for plain integers or arrays out of 1 element it will be plain integer
> > - for strings it will be, for example, '"str1","str2"' (w/o single quotes)
> > for array of string { "str1", "str2" }
> > - for single string or array out of 1 element, it will be '"str"' (w/o single
> > quotes)
> >
> > This should be a part of documentation.
>
> And I will complain then too, these "lists of values" are not for sysfs,
> sorry.
How can you recommend showing an array(s) of values of the same type?
> > > And what tool is going to be
> > > there to parse this mess? Who is going to to use it?
> >
> > I guess something like hwinfo (needs a patch).
>
> If nothing needs this, then why are you adding these?
OK, I will prepare tools first, but I have no idea for the format. So,
how can I be sure that tools will accept the patch if there is no
kernel interface available? Seems like a stale case.
> > The idea behind that this is following what ACPI and DT provides to the users
> > via /sys/firmware/ (however, in binary format). I can re-do to provide a
> > binary, and it will effectively make software nodes in align with the rest.
>
> binary files in sysfs are only to be used as a "pass through" from
> hardware to userspace. That does not seem relevant here.
This makes sense.
> sorry, please keep this out of sysfs for now.
OK. For now I will resubmit the rest with addressed comments.
Thanks!
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists