1// Copyright 2023 The Go Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5package unix 6 7import "syscall" 8 9func PosixFallocate(fd int, off int64, size int64) error { 10 // If successful, posix_fallocate() returns zero. It returns an error on failure, without 11 // setting errno. See https://man.freebsd.org/cgi/man.cgi?query=posix_fallocate&sektion=2&n=1 12 r1, _, _ := syscall.Syscall6(posixFallocateTrap, uintptr(fd), uintptr(off), uintptr(off>>32), uintptr(size), uintptr(size>>32), 0) 13 if r1 != 0 { 14 return syscall.Errno(r1) 15 } 16 return nil 17} 18