[Bug 196086] New: [geom] a race in gmirror cause kernel crash during startup

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Thu Dec 18 08:52:11 UTC 2014


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196086

            Bug ID: 196086
           Summary: [geom] a race in gmirror cause kernel crash during
                    startup
           Product: Base System
           Version: 9.3-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: alexandre.martins at netasq.com

In the function g_mirror_add_disk, the event "G_MIRROR_DISK_STATE_NEW" is sent
before the call to g_mirror_update_metadata.

However, if the event finishes before the call to g_mirror_update_metadata,
with the result that the disk is destroy, the "disk" pointer is now invalid and
may cause a kernel crash.


In my case, the disk was invalid because its syncid was not updated ("Component
ada1 (device gm0) broken, skipping." in function g_mirror_update_device)


The solution may be to call g_mirror_update_metadata before the launch of the
event G_MIRROR_DISK_STATE_NEW.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list