Date: Sat, 14 Jul 2007 00:25:39 -0400 From: "Constantine A. Murenin" <cnst@FreeBSD.org> To: John Baldwin <jhb@FreeBSD.org> Cc: Rui Paulo <rpaulo@fnop.net>, Shteryana Shopova <syrinx@FreeBSD.org>, "Constantine A. Murenin" <cnst@FreeBSD.org>, Poul-Henning Kamp <phk@phk.freebsd.dk>, Robert Watson <rwatson@FreeBSD.org>, freebsd-arch@FreeBSD.org, Alexander Leidinger <Alexander@leidinger.net> Subject: Re: Porting OpenBSD's sysctl hw.sensors framework to FreeBSD Message-ID: <46985043.8010204@FreeBSD.org> In-Reply-To: <200707131252.08792.jhb@freebsd.org> References: <55754.1184143579@critter.freebsd.dk> <200707121404.34168.jhb@freebsd.org> <46979EC3.20803@FreeBSD.org> <200707131252.08792.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 13/07/2007 12:52, John Baldwin wrote: > On Friday 13 July 2007 11:48:19 am Constantine A. Murenin wrote: > >>On 12/07/2007 14:04, John Baldwin wrote: >> >> >>>On Thursday 12 July 2007 03:00:08 am Alexander Leidinger wrote: >>> >>> >>>>Quoting John Baldwin <jhb@freebsd.org> (from Wed, 11 Jul 2007 >>> >>>11:45:26 -0400): >>> >>> >>>>>On Wednesday 11 July 2007 07:49:59 am Alexander Leidinger wrote: >>>> >>>>>>On the other hand you don't want to allow an userland tool to directly >>>>>>mess around with the registers on your RAID or NIC to get some status... >>>>> >>>>>Err, that's how all the RAID utilities I've used work. They send > > firmware > >>>>>commands from userland and parse the replies in userland. One exception >>> >>>I've >>> >>> >>>>That's sad... they should provide this functionality in the driver >>>>instead, it would allow to use access restrictions for some parts. >>> >>> >>>Not really, it avoids having to duplicate a lot of work in drivers that > > can be > >>>written once in a cross-platform userland utility. Drivers aren't really > > the > >>>place to be monitoring raid status sending pages, e-mails, etc. It's best > > to > >>>let userland invoke sendmail, not the kernel. :) >> >>John, I'm sorry to disappoint you, but RAID drivers in OpenBSD don't >>implement SMTP and don't do emails, they only provide updates to the >>sensors framework when there are some changes in the state of the drive. :) >> >>sensorsd(8) is used to send alerts and emails based on the information >>from the sensors framework, and user configuration. >> >>bioctl(8) is used to configure RAID for _all drivers_. There are no >>separate utilities for RAID configuration based on brand-name, just like >>nowadays there are no separate utilities for configuring Ethernet >>adapters. [0] > > > According to the various manpages on www.openbsd.org you cannot configure > arrays on the OS for at least mfi(4), ciss(4), twe(4), mpi(4) (like mpt(4) in > FreeBSD) or ami(4) (like amr(4) in FreeBSD). You can only do monitoring via > hw.sensors for ciss(4) and ami(4), and the example for monitoring ami(4) in > the manpage shows that you can only get volume level data, and as a _string_ > and that you can't get backing physical drive status to know which physical > drive has failed and needs to be replaced: > > $ sysctl hw.sensors.ami0 > hw.sensors.ami0.drive0=online (sd0), OK > hw.sensors.ami0.drive1=degraded (sd1), WARNING > hw.sensors.ami0.drive2=failed (sd2), CRITICAL I'm not an expert on RAID monitoring and rebuilding, so I don't think I can answer your questions about bioctl(8). You might want to refer to a presentation that was done at BSDCan 2006 by David Gwynne. [b] However, I can tell you that in this sysctl(8) output that you've quoted, "online" etc and "OK" etc fields are represented as enums (in sensor datastructure), not strings. I trust that bioctl(8) gives further status on which exact drive has failed, again, see dlg's presentation. (Note that the sensors part of that presentation is now a bit outdated.) As far as RAID drivers providing sensors are concerned -- a grep for SENSOR_DRIVE_ONLINE reveals that it is being referenced from ami(4), arc(4), ciss(4), mfi(4) and softraid(4). From what I could see in the man pages, mpi(4) chips usually don't provide any raid functionality and twe(4) lacks programming documentation from the manufacturer, thus unavailability of RAID sensors from those two drivers doesn't come as a surprise. ;) Cheers, Constantine. [b] http://www.openbsd.org/papers/bsdcan06-biosensors.pdf
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46985043.8010204>