From 7153fc9379dd5910c688925ccd2e0a03b9551a6d Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 13 Jul 2022 22:38:43 -0600 Subject: Buffer FS IO --- lib/btrfsprogs/btrfsutil/open.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'lib/btrfsprogs/btrfsutil') diff --git a/lib/btrfsprogs/btrfsutil/open.go b/lib/btrfsprogs/btrfsutil/open.go index 0f3b32a..9491a20 100644 --- a/lib/btrfsprogs/btrfsutil/open.go +++ b/lib/btrfsprogs/btrfsutil/open.go @@ -28,8 +28,13 @@ func Open(ctx context.Context, flag int, filenames ...string) (*btrfs.FS, error) typedFile := &diskio.OSFile[btrfsvol.PhysicalAddr]{ File: osFile, } + bufFile := diskio.NewBufferedFile[btrfsvol.PhysicalAddr]( + typedFile, + 16384, // block size: 16KiB + 1024, // number of blocks to buffer; total of 16MiB + ) devFile := &btrfs.Device{ - File: typedFile, + File: bufFile, } if err := fs.AddDevice(ctx, devFile); err != nil { return nil, fmt.Errorf("device file %q: %w", filename, err) -- cgit v1.2.3-2-g168b