From 7e9ba22dc358196ac0d13524aa05677327f19ff9 Mon Sep 17 00:00:00 2001 From: Vincent Batts Date: Mon, 22 Sep 2014 16:40:20 -0400 Subject: [PATCH 1/2] devmapper: `docker info` devices hard coded If `--storage-opt dm.datadev=/dev/loop0 --storage-opt dm.metadatadev=/dev/loop1 ` were provided, the information was not reflected in the information output. Closes: #7137 Signed-off-by: Vincent Batts --- daemon/graphdriver/devmapper/deviceset.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/daemon/graphdriver/devmapper/deviceset.go b/daemon/graphdriver/devmapper/deviceset.go index f973a01363..851fa42ac7 100644 --- a/daemon/graphdriver/devmapper/deviceset.go +++ b/daemon/graphdriver/devmapper/deviceset.go @@ -1134,8 +1134,16 @@ func (devices *DeviceSet) Status() *Status { status := &Status{} status.PoolName = devices.getPoolName() - status.DataLoopback = path.Join(devices.loopbackDir(), "data") - status.MetadataLoopback = path.Join(devices.loopbackDir(), "metadata") + if len(devices.dataDevice) > 0 { + status.DataLoopback = devices.dataDevice + } else { + status.DataLoopback = path.Join(devices.loopbackDir(), "data") + } + if len(devices.metadataDevice) > 0 { + status.MetadataLoopback = devices.metadataDevice + } else { + status.MetadataLoopback = path.Join(devices.loopbackDir(), "metadata") + } totalSizeInSectors, _, dataUsed, dataTotal, metadataUsed, metadataTotal, err := devices.poolStatus() if err == nil { From 636e8561a86ffba909790e9188ffe282770570f0 Mon Sep 17 00:00:00 2001 From: Vincent Batts Date: Mon, 22 Sep 2014 17:03:31 -0400 Subject: [PATCH 2/2] devmapper: resizepool hardcodes files as well Signed-off-by: Vincent Batts --- daemon/graphdriver/devmapper/deviceset.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/daemon/graphdriver/devmapper/deviceset.go b/daemon/graphdriver/devmapper/deviceset.go index 851fa42ac7..ccaea0181e 100644 --- a/daemon/graphdriver/devmapper/deviceset.go +++ b/daemon/graphdriver/devmapper/deviceset.go @@ -466,7 +466,13 @@ func minor(device uint64) uint64 { func (devices *DeviceSet) ResizePool(size int64) error { dirname := devices.loopbackDir() datafilename := path.Join(dirname, "data") + if len(devices.dataDevice) > 0 { + datafilename = devices.dataDevice + } metadatafilename := path.Join(dirname, "metadata") + if len(devices.metadataDevice) > 0 { + metadatafilename = devices.metadataDevice + } datafile, err := os.OpenFile(datafilename, os.O_RDWR, 0) if datafile == nil {