@@ -147,14 +147,14 @@ type BootConfig struct {
147
147
Root string `json:"root"`
148
148
LogLevel string `json:"verbose"`
149
149
LogReportCaller bool `json:"logReportCaller"`
150
- Mode string `json:"mode "` // fs , dir or dev
150
+ RwMode string `json:"rwMode "` // overlayfs , dir or dev
151
151
AutoRemoveDev bool `json:"autoRemoveDev"`
152
152
}
153
153
154
154
func DefaultBootConfig () * BootConfig {
155
155
return & BootConfig {
156
156
LogLevel : "info" ,
157
- Mode : "overlayfs" ,
157
+ RwMode : "overlayfs" ,
158
158
LogReportCaller : false ,
159
159
AutoRemoveDev : false ,
160
160
}
@@ -209,7 +209,7 @@ type Opt func(config *SnapshotterConfig) error
209
209
// - metadata.db
210
210
type snapshotter struct {
211
211
root string
212
- mode string
212
+ rwMode string
213
213
config SnapshotterConfig
214
214
metacopyOption string
215
215
ms * storage.MetaStore
@@ -254,7 +254,7 @@ func NewSnapshotter(bootConfig *BootConfig, opts ...Opt) (snapshots.Snapshotter,
254
254
255
255
return & snapshotter {
256
256
root : bootConfig .Root ,
257
- mode : bootConfig .Mode ,
257
+ rwMode : bootConfig .RwMode ,
258
258
ms : ms ,
259
259
indexOff : indexOff ,
260
260
config : config ,
@@ -357,7 +357,7 @@ func (o *snapshotter) getWritableType(ctx context.Context, id string, info snaps
357
357
}
358
358
m , ok := info .Labels [LabelSupportReadWriteMode ]
359
359
if ! ok {
360
- return rwMode (o .mode )
360
+ return rwMode (o .rwMode )
361
361
}
362
362
363
363
return rwMode (m )
@@ -593,10 +593,12 @@ func (o *snapshotter) Mounts(ctx context.Context, key string) ([]mount.Mount, er
593
593
log .G (ctx ).Debugf ("Mounts (key: %s, id: %s, parentID: %s, kind: %d)" , key , s .ID , s .ParentIDs , s .Kind )
594
594
595
595
if len (s .ParentIDs ) > 0 {
596
- o .locker .Lock (s .ID )
597
- defer o .locker .Unlock (s .ID )
598
- o .locker .Lock (s .ParentIDs [0 ])
599
- defer o .locker .Unlock (s .ParentIDs [0 ])
596
+ if o .autoRemoveDev {
597
+ o .locker .Lock (s .ID )
598
+ defer o .locker .Unlock (s .ID )
599
+ o .locker .Lock (s .ParentIDs [0 ])
600
+ defer o .locker .Unlock (s .ParentIDs [0 ])
601
+ }
600
602
601
603
_ , info , _ , err := storage .GetInfo (ctx , key )
602
604
if err != nil {
0 commit comments