Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Aug 2001 09:26:13 -0500
From:      Mike Meyer <mwm@mired.org>
To:        Hajimu UMEMOTO <ume@mahoroba.org>
Cc:        mwm@mired.org, varju@webct.com, stable@freebsd.org
Subject:   Re: Freezes in 4.4RC on SMP Kernel and gkrellm
Message-ID:  <15246.19717.31335.194978@guru.mired.org>
In-Reply-To: <20010830.222356.125820097.ume@mahoroba.org>
References:  <15245.28607.676147.717891@guru.mired.org> <20010829155138.F60349-100000@snapple.webct.com> <15245.51106.120852.616240@guru.mired.org> <20010830.222356.125820097.ume@mahoroba.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hajimu UMEMOTO <ume@mahoroba.org> types:
> >>>>> On Wed, 29 Aug 2001 23:57:06 -0500
> >>>>> Mike Meyer <mwm@mired.org> said:
> mwm> Turns out that gkrellm can be *very* hazardous to your system. I've
> mwm> got a situation where the system panics every time I start gkrellm. I
> mwm> believe this is a bug in gkrellm, not in the system.
> I didn't thought this thread lead to GKrellM problem. X-(

Well, if I leave gkrellm off, the system doesn't freeze. I'm not sure
what the exact cause is, but it seems to be related to
plugins.

> mwm> From looking over gkrellm's code, it assumes that any smb device it
> mwm> finds is the one it knows about - and proceeds to try and extract data
> mwm> from it. This seems like a bad idea - at least in this case.
> Yes, it is dirty.  However, I have no idea to distinguish if smb is
> mapped to initpm.  I wish to fix it.  Is there any way to do it?

Well, it's possible, because healthd does it. But I think that's the
wrong fix.

> mwm> gkrellm also has the problem that it initializes every monitor it
> mwm> knows about, even if that one isn't being displayed. Without the smb
> mwm> devices, it uses /dev/io, and that's left open so that gkrellm can
> mwm> lower it's privileges after opening the file. This means bugs in other
> mwm> modules could stroke /dev/io in some strange way - and I believe
> mwm> that's the root cause of the freezes I'm seeing.
> I wish to have a generic method to obtain temperature, fan speed and
> voltage without any extra privilege.

The approach I've been looking at is to replace the sensors builtin
with a plugin that access healthd - except I think the problems may be
related to plugins :-(.

Healthd handles different smb interfaces better, in that it doesn't
crash the system. It's more accurate, if for nothing else because it
knows the factor/offset numbers for the different chips, and uses
those directly. There appears to be a systematic error reading
voltages 2.4% low in the FreeBSD code in sensors.c as well, but I'm
not sure which one of the two is wrong. Finally, it handles more chip
types than the sensors.c code does.

For instance, I get two temperatures - one per CPU - out of healthd,
and I can't see a sane way to do that in the sensors module.

The healthd protocol lets you get min & max values to use for alerts
as well, though I haven't investigated that thoroughly.

> mwm> I've installed gkrellm WITHOUT_SENSOR=yes - which sgid instead of suid
> mwm> - and enabled all the things that I had on when the system was
> mwm> freezing before, except the sensors.
> I'll turn sensor support off by default for workaround.

I'm not sure that solves the problem. I still got freezes when
installing it WITHOUT_SENSOR=yes.

	<mike
--
Mike Meyer <mwm@mired.org>			http://www.mired.org/home/mwm/
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15246.19717.31335.194978>