Signed-off-by: Shishir Mahajan <shishir.mahajan@redhat.com>
| ... | ... |
@@ -1621,19 +1621,7 @@ func (devices *DeviceSet) loadThinPoolLoopBackInfo() error {
|
| 1621 | 1621 |
return nil |
| 1622 | 1622 |
} |
| 1623 | 1623 |
|
| 1624 |
-func (devices *DeviceSet) initDevmapper(doInit bool) error {
|
|
| 1625 |
- // give ourselves to libdm as a log handler |
|
| 1626 |
- devicemapper.LogInit(devices) |
|
| 1627 |
- |
|
| 1628 |
- version, err := devicemapper.GetDriverVersion() |
|
| 1629 |
- if err != nil {
|
|
| 1630 |
- // Can't even get driver version, assume not supported |
|
| 1631 |
- return graphdriver.ErrNotSupported |
|
| 1632 |
- } |
|
| 1633 |
- |
|
| 1634 |
- if err := determineDriverCapabilities(version); err != nil {
|
|
| 1635 |
- return graphdriver.ErrNotSupported |
|
| 1636 |
- } |
|
| 1624 |
+func (devices *DeviceSet) enableDeferredRemovalDeletion() error {
|
|
| 1637 | 1625 |
|
| 1638 | 1626 |
// If user asked for deferred removal then check both libdm library |
| 1639 | 1627 |
// and kernel driver support deferred removal otherwise error out. |
| ... | ... |
@@ -1655,6 +1643,26 @@ func (devices *DeviceSet) initDevmapper(doInit bool) error {
|
| 1655 | 1655 |
logrus.Debug("devmapper: Deferred deletion support enabled.")
|
| 1656 | 1656 |
devices.deferredDelete = true |
| 1657 | 1657 |
} |
| 1658 |
+ return nil |
|
| 1659 |
+} |
|
| 1660 |
+ |
|
| 1661 |
+func (devices *DeviceSet) initDevmapper(doInit bool) error {
|
|
| 1662 |
+ // give ourselves to libdm as a log handler |
|
| 1663 |
+ devicemapper.LogInit(devices) |
|
| 1664 |
+ |
|
| 1665 |
+ version, err := devicemapper.GetDriverVersion() |
|
| 1666 |
+ if err != nil {
|
|
| 1667 |
+ // Can't even get driver version, assume not supported |
|
| 1668 |
+ return graphdriver.ErrNotSupported |
|
| 1669 |
+ } |
|
| 1670 |
+ |
|
| 1671 |
+ if err := determineDriverCapabilities(version); err != nil {
|
|
| 1672 |
+ return graphdriver.ErrNotSupported |
|
| 1673 |
+ } |
|
| 1674 |
+ |
|
| 1675 |
+ if err := devices.enableDeferredRemovalDeletion(); err != nil {
|
|
| 1676 |
+ return err |
|
| 1677 |
+ } |
|
| 1658 | 1678 |
|
| 1659 | 1679 |
// https://github.com/docker/docker/issues/4036 |
| 1660 | 1680 |
if supported := devicemapper.UdevSetSyncSupport(true); !supported {
|