Browse code

Make btrfs call same interface as others

Most storage drivers call graphdriver.GetFSMagic(home),
it is more clean to easy to maintain. So btrfs need to
adopt such change.

Signed-off-by: Kai Qiang Wu(Kennan) <wkqwu@cn.ibm.com>

Kai Qiang Wu(Kennan) authored on 2016/02/01 16:50:16
Showing 1 changed files
... ...
@@ -31,14 +31,13 @@ func init() {
31 31
 // Init returns a new BTRFS driver.
32 32
 // An error is returned if BTRFS is not supported.
33 33
 func Init(home string, options []string, uidMaps, gidMaps []idtools.IDMap) (graphdriver.Driver, error) {
34
-	rootdir := path.Dir(home)
35 34
 
36
-	var buf syscall.Statfs_t
37
-	if err := syscall.Statfs(rootdir, &buf); err != nil {
35
+	fsMagic, err := graphdriver.GetFSMagic(home)
36
+	if err != nil {
38 37
 		return nil, err
39 38
 	}
40 39
 
41
-	if graphdriver.FsMagic(buf.Type) != graphdriver.FsMagicBtrfs {
40
+	if fsMagic != graphdriver.FsMagicBtrfs {
42 41
 		return nil, graphdriver.ErrPrerequisites
43 42
 	}
44 43