containerd/vendor/go.etcd.io/bbolt/bolt_openbsd.go
John Howard f1cc4feea6 Vendor go.etcd.io/bbolt @ v1.3.1-etcd.8
Signed-off-by: John Howard <jhoward@microsoft.com>

This is the maintained version of boltdb, which includes the Windows-specific fix
detailed in https://github.com/etcd-io/bbolt/pull/122
2018-09-12 15:32:13 -07:00

28 lines
519 B
Go

package bbolt
import (
"syscall"
"unsafe"
)
const (
msAsync = 1 << iota // perform asynchronous writes
msSync // perform synchronous writes
msInvalidate // invalidate cached data
)
func msync(db *DB) error {
_, _, errno := syscall.Syscall(syscall.SYS_MSYNC, uintptr(unsafe.Pointer(db.data)), uintptr(db.datasz), msInvalidate)
if errno != 0 {
return errno
}
return nil
}
func fdatasync(db *DB) error {
if db.data != nil {
return msync(db)
}
return db.file.Sync()
}