RFC: Project geom-events
Lev Serebryakov
lev at FreeBSD.org
Wed Oct 5 08:51:15 UTC 2011
Hello, Andrey.
You wrote 5 октября 2011 г., 11:51:36:
> On 05.10.2011 10:39, Lev Serebryakov wrote:
>>> (1) Class and name of GEOM which is affected.
>>> (2) Name of provider which is affected.
>>> (3) Name of underlying provider which is lost (consumer from
>>> reporting GEOM's point of view).
>>> (4) Resulting state of affected provider (fixable, alive, dead).
> All except last could be get from the consumer in the orphan method.
I'm afraid, that (2) could not be known too in generic way, as GEOM
could have several providers, and only part of them could be affected by
disconnection. Consumer contains geom (with class) and underlying
provider, it is items (1) and (3)...
>> Other example -- geom_label creates and destroys about 10 labels on
>> boot (on my test VM) and, if DESTROYED will be reported by very
>> generic mechanism, it will end up with 10 e-mails to administrator on
>> every boot -- I've got this, when put notifications in too generic
>> place for first try.
> Ok, good point. Can you explain how your script will distinguish which
> actions are performed by administrator? Since change made by administrator
> could trigger disappearing of several child geoms.
Not the script, but GEOMs themselves. They knows, why disk
disappears. Of course, it work only one-level -- if administrator
calls "gmirror remove gm0 ada4" geom_mirror knows, that ada4 is no
failed. Yes, I understand, that if here is configuration like this:
gmirror0
gstripe0
ada0
ada1
gstripe1
ada2
ada3
and administrator kills gstripe0, for example, geom_mirror will send
event, because from its point of view it is not administrative
action...
But such situations, IMHO, are not very often ones.
--
// Black Lion AKA Lev Serebryakov <lev at FreeBSD.org>
More information about the freebsd-current
mailing list