github.com/Cloud-Foundations/Dominator@v0.3.4/lib/fsutil/fallocate.go (about)

     1  package fsutil
     2  
     3  import (
     4  	"syscall"
     5  
     6  	"github.com/Cloud-Foundations/Dominator/lib/wsyscall"
     7  )
     8  
     9  func fallocate(filename string, size uint64) error {
    10  	fd, err := syscall.Open(filename, syscall.O_RDWR, 0)
    11  	if err != nil {
    12  		return err
    13  	}
    14  	defer syscall.Close(fd)
    15  	return wsyscall.Fallocate(int(fd), wsyscall.FALLOC_FL_KEEP_SIZE,
    16  		0, int64(size))
    17  }