geom access method and g_topology_lock

Andriy Gapon avg at FreeBSD.org
Thu Oct 25 06:49:08 UTC 2012


Is that bad if a geom's access method drops and re-acquires g_topology_lock
while doing some internal stuff?
Is that allowed at all?

The problem is that the following innocent-looking code may become not quite so
innocent:

g_topology_assert();
g_access(cp, -1, 0, -1);
/* a lot might have happened between these two lines */
g_detach(cp);
g_destroy_consumer(cp);


-- 
Andriy Gapon


More information about the freebsd-geom mailing list