moby--moby/daemon/graphdriver
Vivek Goyal 289145ecc6 devmapper: Get rid of metaData.devicesLock
Right now we seem to have 3 locks. 

- devinfo.lock
  This is a per device lock

- metaData.devicesLock

  This is supposedely protecting map of devices.

- Global DeviceSet lock

  This is protecting map of devices as well as serializing calls to libdevmapper.

Semantics of per devices lock and global deviceset lock seem to be very clear.
Even ordering between these two locks has been defined properly.

What is not clear is the need and ordering of metaData.devicesLock. Looks like
this lock is not necessary and global DeviceSet lock should be used to
protect map of devices as it is part of DeviceSet.

This patchset gets rid of metaData.devicesLock and instead uses DeviceSet
lock to protect map of devices.

Also at couple of places during initialization takes devices.Lock(). That
is not strictly necessary as there is supposed to be one thread of execution
during initializaiton. Still it makes the code clearer.

I think this makes code more clear and easier to understand and easier to
make further changes.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2015-10-01 13:02:55 -04:00
..
aufs Enable golint in pkg/arcive 2015-08-04 09:52:54 +08:00
btrfs Try to resize data and metadata loopback file when initiating devicemapper 2015-09-24 09:31:00 +08:00
devmapper devmapper: Get rid of metaData.devicesLock 2015-10-01 13:02:55 -04:00
graphtest Merge pull request #15422 from kolyshkin/graphtest-fix 2015-08-10 12:21:21 -07:00
overlay Try to resize data and metadata loopback file when initiating devicemapper 2015-09-24 09:31:00 +08:00
vfs Try to resize data and metadata loopback file when initiating devicemapper 2015-09-24 09:31:00 +08:00
windows Fix golint issues on the windows graph driver. 2015-09-29 18:32:45 -04:00
zfs Try to resize data and metadata loopback file when initiating devicemapper 2015-09-24 09:31:00 +08:00
driver.go daemon/graphdriver fix lint errors/warnings 2015-08-17 19:27:36 +00:00
driver_freebsd.go make docker compile on freebsd 2015-07-29 21:25:56 +03:00
driver_linux.go daemon/graphdriver fix lint errors/warnings 2015-08-17 19:27:36 +00:00
driver_unsupported.go daemon/graphdriver fix lint errors/warnings 2015-08-17 19:27:36 +00:00
driver_windows.go daemon/graphdriver fix lint errors/warnings 2015-08-17 19:27:36 +00:00
fsdiff.go Try to resize data and metadata loopback file when initiating devicemapper 2015-09-24 09:31:00 +08:00
imagerestorer.go Make graph.Register take in io.Reader 2015-08-20 20:37:11 -07:00