From d49620835037c06a290715697a21b84bceeb6c1e Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sun, 26 Jun 2022 20:32:47 -0600 Subject: Have btrfsvol be generic --- pkg/btrfs/io2_fs.go | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'pkg/btrfs/io2_fs.go') diff --git a/pkg/btrfs/io2_fs.go b/pkg/btrfs/io2_fs.go index 208ef2c..c9208b7 100644 --- a/pkg/btrfs/io2_fs.go +++ b/pkg/btrfs/io2_fs.go @@ -10,7 +10,7 @@ import ( ) type FS struct { - lv btrfsvol.LogicalVolume + lv btrfsvol.LogicalVolume[*Device] cacheSuperblocks []*util.Ref[PhysicalAddr, Superblock] cacheSuperblock *util.Ref[PhysicalAddr, Superblock] @@ -59,12 +59,7 @@ func (fs *FS) UnResolve(paddr QualifiedPhysicalAddr) LogicalAddr { } func (fs *FS) Devices() []*Device { - untyped := fs.lv.PhysicalVolumes() - typed := make([]*Device, len(untyped)) - for i := range untyped { - typed[i] = untyped[i].(*Device) - } - return typed + return fs.lv.PhysicalVolumes() } func (fs *FS) Superblocks() ([]*util.Ref[PhysicalAddr, Superblock], error) { @@ -73,7 +68,7 @@ func (fs *FS) Superblocks() ([]*util.Ref[PhysicalAddr, Superblock], error) { } var ret []*util.Ref[PhysicalAddr, Superblock] for _, dev := range fs.lv.PhysicalVolumes() { - sbs, err := dev.(*Device).Superblocks() + sbs, err := dev.Superblocks() if err != nil { return nil, fmt.Errorf("file %q: %w", dev.Name(), err) } @@ -123,7 +118,7 @@ func (fs *FS) Superblock() (*util.Ref[PhysicalAddr, Superblock], error) { func (fs *FS) Init() error { fs.lv.ClearMappings() for _, dev := range fs.lv.PhysicalVolumes() { - sbs, err := dev.(*Device).Superblocks() + sbs, err := dev.Superblocks() if err != nil { return fmt.Errorf("file %q: %w", dev.Name(), err) } -- cgit v1.2.3-2-g168b