]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Before trying to update metadata (so open consumer for writing), be sure
authorPawel Jakub Dawidek <pjd@FreeBSD.org>
Tue, 9 Nov 2004 23:27:21 +0000 (23:27 +0000)
committerPawel Jakub Dawidek <pjd@FreeBSD.org>
Tue, 9 Nov 2004 23:27:21 +0000 (23:27 +0000)
commit085f43afae61f0b918a4a94951084c9b97baeec5
tree2aba1aa0a1591d39f74128bd1fbe280eb2fa122d
parentb8005b9b2464807d792a6412fa9715cd2c709c49
Before trying to update metadata (so open consumer for writing), be sure
that the events queue is empty. In other case we're able to hit the race
where for example da0s1 is tasted by some other class, which means that
da0 is open with exclusive bit set, which means that we can't open da0
for writing if it is our component.

Reported by: Attila Nagy <bra@fsn.hu> (and somebody else sometime ago,
                          but I cannot find who it was)
sys/geom/mirror/g_mirror.c
sys/geom/raid3/g_raid3.c