RFC: Project geom-events

Lev Serebryakov lev at FreeBSD.org
Wed Oct 5 06:27:20 UTC 2011

Hello, Andrey.
You wrote 5 октября 2011 г., 9:07:16:

> It seems that you could change only geom_dev.c to get most of what you want.
> Actually, the part of your changes related to the DISCONNECT events, and
> maybe DESTROY events could be implemented in the geom_dev.
  Does geom_dev knows all needed bits of information to report? It seems to me,
that it isn't.
  I mean:

   (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).

  Yes, geom_dev knows name of FAILED provider, but does it knows all
 other? I'm affraid -- not, or I don't understand how generic
 mechanism could now, that geom_stripe could not lose components and
 still be fixable, and gome_mirror could.

  Additionally, some GEOM classes could throw away faulty consumers before
 they disappear from geom_dev point of view.

  Actually, DESTROY could be observed without my changes at all --
 message from DEVFS about removing entry :) But, again, this
 notification will not contain name and class of GEOM, only provider's
 name (devfs entry).

// Black Lion AKA Lev Serebryakov <lev at FreeBSD.org>

More information about the freebsd-geom mailing list