All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jean Delvare <khali@linux-fr.org>
To: lm-sensors@vger.kernel.org
Subject: Re: [lm-sensors] lm-sensors 3.0.0-rc1 has been released!
Date: Sun, 30 Sep 2007 12:10:31 +0000	[thread overview]
Message-ID: <20070930141031.2d8714e5@hyperion.delvare> (raw)
In-Reply-To: <20070925233316.7afaa297@hyperion.delvare>

Hi Henrique,

On Sat, 29 Sep 2007 21:56:18 -0300, Henrique de Moraes Holschuh wrote:
> On Sat, 29 Sep 2007, Jean Delvare wrote:
> > > I think we should differentiate ENXIO (sensor is not there right now) from
> > > EIO (real IO error).
> > 
> > ENXIO should probably not be returned in the first place. Missing,
> > disabled or otherwise non-working sensors are reported through
> > fooN_fault files. When a fault is reported, user-space doesn't make use
> > of the (invalid or missing) input sensor value.
> 
> This is not what I was told in this list in the past,

Sorry about that. I remember you asking about this problem some times
ago, and indeed I forgot to mention the "fault flag" mechanism. Well,
back then, fooN_fault files did not exist as such, but at least I
should have mentioned the concept. I simply did not realize that your
problem wasn't something completely new. My bad.

>                                                       which is why I return
> ENXIO if one tries to access a hotplug thermal sensor in a thinkpad.  If the
> EC would notify me when sensors come and go, I could add/remove the
> attributes from sysfs and avoid the whole issue, but that's wishful
> thinking.

libsensors wouldn't cope with that anyway, so I'm glad you're not doing
it. libsensors probes for available features at initialization time.
After that, the feature list doesn't change and applications can count
on it not changing. Of course, applications can run sensors_init()
again to get a fresher view of the hardware state, but this is pretty
expensive and not something that we want applications to do every other
second.

I agree it would be nice to have some form of hotplug support in
libsensors, not just for features being added or removed, but primarily
for _devices_ being added or removed. But I didn't have the time to
think about it. It was hard enough (and long enough) to get lm-sensors
3.0.0 ready to be released, I just can't do more myself.

> (...)
> Retrying on EINTR is pretty much needed, AFAIK.  If the library doesn't do
> retries by itself, we must return a separate return code so that the library
> user can.  I have never heard of EINTR being anything but a very temporary
> condition, though.

I just don't understand when -EINTR is supposed to be returned, sorry.
I don't think we have any hardware monitoring driver returning this at
the moment, do we?

> (...)
> Drivers *do* often retry, if the hardware is busy.  But if they get a
> signal, what should they do, then?  AFAIK at least for stuff like sysfs, one
> is to return to userspace with EINTR to let userspace handle its signals,
> and resubmit the request if it wants to.
> 
> My sources of EINTR in thinkpad-acpi are from mutex_lock_interruptible.

I really need you to explain in details how and why EINTR is generated
and what we are supposed to do with it. I can't implement anything in
libsensors as long as I don't understand what we are dealing with.
Ideally, you would even be writing the libsensors patch, as you seem to
understand the needs much better than I do.

Thanks,
-- 
Jean Delvare

_______________________________________________
lm-sensors mailing list
lm-sensors@lm-sensors.org
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors

  parent reply	other threads:[~2007-09-30 12:10 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-25 21:33 [lm-sensors] lm-sensors 3.0.0-rc1 has been released! Jean Delvare
2007-09-25 21:45 ` Philip Edelbrock
2007-09-26 21:02 ` Hans de Goede
2007-09-27 14:35 ` Jean Delvare
2007-09-27 14:42 ` Jean Delvare
2007-09-27 17:53 ` Henrique de Moraes Holschuh
2007-09-28 17:07 ` Jean Delvare
2007-09-28 20:13 ` Henrique de Moraes Holschuh
2007-09-29 13:39 ` Jean Delvare
2007-09-30  0:56 ` Henrique de Moraes Holschuh
2007-09-30 11:54 ` Jean Delvare
2007-09-30 12:10 ` Jean Delvare [this message]
2007-09-30 14:54 ` Henrique de Moraes Holschuh
2007-10-03 10:36 ` Jean Delvare
2007-10-03 11:38 ` Henrique de Moraes Holschuh
2007-10-04  9:45 ` Jean Delvare
2007-10-04 12:49 ` Henrique de Moraes Holschuh
2007-10-04 13:42 ` Jean Delvare
2007-10-07 11:21 ` Axel Thimm
2007-10-17 21:44 ` Jean Delvare
2007-10-18  7:17 ` Hans de Goede
2007-10-18  8:18 ` Aurelien Jarno
2007-10-19 14:46 ` Jean Delvare
2007-10-19 20:18 ` Hans de Goede
2007-10-20 18:13 ` Jean Delvare
2007-10-20 22:41 ` Hans de Goede
2007-10-21 19:08 ` Jean Delvare
2007-10-21 19:13 ` Hans de Goede
2007-10-21 21:12 ` Jean Delvare
2007-10-22  7:06 ` Hans de Goede
2007-10-22  7:48 ` Jean Delvare
2007-10-22  8:13 ` Hans de Goede
2007-10-22  8:23 ` Jean Delvare
2007-10-22  9:40 ` Hans de Goede
2007-10-22 11:55 ` Jean Delvare
2007-10-22 13:15 ` Hans de Goede
2007-10-22 13:55 ` Jean Delvare
2007-10-22 19:27 ` Hans de Goede
2007-10-22 22:25 ` Aurelien Jarno
2007-10-24 15:30 ` Jean Delvare
2007-10-24 17:09 ` Hans de Goede

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=20070930141031.2d8714e5@hyperion.delvare \
    --to=khali@linux-fr.org \
    --cc=lm-sensors@vger.kernel.org \
    /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.