dd7bfb2 networkStateInitialize: Don't lock network driver

Authored and Committed by mprivozn 9 years ago
    networkStateInitialize: Don't lock network driver
    
    There's no need to lock the network driver, as network driver
    initialization is done prior accepting any client. There's nobody
    to hop in and do something over partially initialized driver. Nor
    qemu driver is doing that.
    
    ==30532== Observed (incorrect) order is: acquisition of lock at 0x1439EF50
    ==30532==    at 0x4C31A26: pthread_mutex_lock (in /usr/lib64/valgrind/vgpreload_helgrind-amd64-linux.so)
    ==30532==    by 0x5324895: virMutexLock (virthread.c:88)
    ==30532==    by 0x5307E86: virObjectLock (virobject.c:323)
    ==30532==    by 0x5396440: virNetworkObjListForEach (network_conf.c:4511)
    ==30532==    by 0x19B29308: networkStateInitialize (bridge_driver.c:686)
    ==30532==    by 0x53E1CCC: virStateInitialize (libvirt.c:777)
    ==30532==    by 0x11DEB7: daemonRunStateInit (libvirtd.c:906)
    ==30532==    by 0x5324B6A: virThreadHelper (virthread.c:197)
    ==30532==    by 0x4C30456: ??? (in /usr/lib64/valgrind/vgpreload_helgrind-amd64-linux.so)
    ==30532==    by 0xA1EC1F2: start_thread (in /lib64/libpthread-2.19.so)
    ==30532==    by 0xA4EDC8C: clone (in /lib64/libc-2.19.so)
    ==30532==
    ==30532==  followed by a later acquisition of lock at 0x1439CD60
    ==30532==    at 0x4C31A26: pthread_mutex_lock (in /usr/lib64/valgrind/vgpreload_helgrind-amd64-linux.so)
    ==30532==    by 0x5324895: virMutexLock (virthread.c:88)
    ==30532==    by 0x19B27B2C: networkDriverLock (bridge_driver.c:102)
    ==30532==    by 0x19B27B60: networkGetDnsmasqCaps (bridge_driver.c:113)
    ==30532==    by 0x19B2856A: networkUpdateState (bridge_driver.c:389)
    ==30532==    by 0x53963E9: virNetworkObjListForEachHelper (network_conf.c:4488)
    ==30532==    by 0x52E2224: virHashForEach (virhash.c:521)
    ==30532==    by 0x539645B: virNetworkObjListForEach (network_conf.c:4512)
    ==30532==    by 0x19B29308: networkStateInitialize (bridge_driver.c:686)
    ==30532==    by 0x53E1CCC: virStateInitialize (libvirt.c:777)
    ==30532==    by 0x11DEB7: daemonRunStateInit (libvirtd.c:906)
    ==30532==    by 0x5324B6A: virThreadHelper (virthread.c:197)
    ==30532==
    ==30532== Required order was established by acquisition of lock at 0x1439CD60
    ==30532==    at 0x4C31A26: pthread_mutex_lock (in /usr/lib64/valgrind/vgpreload_helgrind-amd64-linux.so)
    ==30532==    by 0x5324895: virMutexLock (virthread.c:88)
    ==30532==    by 0x19B27B2C: networkDriverLock (bridge_driver.c:102)
    ==30532==    by 0x19B28DF9: networkStateInitialize (bridge_driver.c:609)
    ==30532==    by 0x53E1CCC: virStateInitialize (libvirt.c:777)
    ==30532==    by 0x11DEB7: daemonRunStateInit (libvirtd.c:906)
    ==30532==    by 0x5324B6A: virThreadHelper (virthread.c:197)
    ==30532==    by 0x4C30456: ??? (in /usr/lib64/valgrind/vgpreload_helgrind-amd64-linux.so)
    ==30532==    by 0xA1EC1F2: start_thread (in /lib64/libpthread-2.19.so)
    ==30532==    by 0xA4EDC8C: clone (in /lib64/libc-2.19.so)
    ==30532==
    ==30532==  followed by a later acquisition of lock at 0x1439EF50
    ==30532==    at 0x4C31A26: pthread_mutex_lock (in /usr/lib64/valgrind/vgpreload_helgrind-amd64-linux.so)
    ==30532==    by 0x5324895: virMutexLock (virthread.c:88)
    ==30532==    by 0x5307E86: virObjectLock (virobject.c:323)
    ==30532==    by 0x538A09C: virNetworkAssignDef (network_conf.c:527)
    ==30532==    by 0x5391EB2: virNetworkLoadState (network_conf.c:3008)
    ==30532==    by 0x53922D4: virNetworkLoadAllState (network_conf.c:3128)
    ==30532==    by 0x19B2929A: networkStateInitialize (bridge_driver.c:671)
    ==30532==    by 0x53E1CCC: virStateInitialize (libvirt.c:777)
    ==30532==    by 0x11DEB7: daemonRunStateInit (libvirtd.c:906)
    ==30532==    by 0x5324B6A: virThreadHelper (virthread.c:197)
    ==30532==    by 0x4C30456: ??? (in /usr/lib64/valgrind/vgpreload_helgrind-amd64-linux.so)
    ==30532==    by 0xA1EC1F2: start_thread (in /lib64/libpthread-2.19.so)
    
    Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
    
        
file modified
+0 -3