mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-10-30 02:12:24 -05:00
update modernc.org/sqlite to v1.37.0-concurrrency-workaround (#3958)
This commit is contained in:
parent
9c31e213ca
commit
fdf23a91de
64 changed files with 1070 additions and 8220 deletions
22
vendor/modernc.org/memory/mmap_unix.go
generated
vendored
22
vendor/modernc.org/memory/mmap_unix.go
generated
vendored
|
|
@ -2,16 +2,16 @@
|
|||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE-MMAP-GO file.
|
||||
|
||||
//go:build darwin || dragonfly || freebsd || linux || (solaris && !illumos) || netbsd
|
||||
// +build darwin dragonfly freebsd linux solaris,!illumos netbsd
|
||||
//go:build unix
|
||||
|
||||
// Modifications (c) 2017 The Memory Authors.
|
||||
|
||||
package memory // import "modernc.org/memory"
|
||||
|
||||
import (
|
||||
"golang.org/x/sys/unix"
|
||||
"os"
|
||||
"syscall"
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
const pageSizeLog = 20
|
||||
|
|
@ -22,28 +22,18 @@ var (
|
|||
)
|
||||
|
||||
func unmap(addr uintptr, size int) error {
|
||||
_, _, errno := syscall.Syscall(syscall.SYS_MUNMAP, addr, uintptr(size), 0)
|
||||
if errno != 0 {
|
||||
return errno
|
||||
}
|
||||
|
||||
return nil
|
||||
return unix.MunmapPtr(unsafe.Pointer(addr), uintptr(size))
|
||||
}
|
||||
|
||||
// pageSize aligned.
|
||||
func mmap(size int) (uintptr, int, error) {
|
||||
size = roundup(size, osPageSize)
|
||||
|
||||
// The actual mmap syscall varies by architecture. mmapSyscall provides same
|
||||
// functionality as the unexported funtion syscall.mmap and is declared in
|
||||
// mmap_*_*.go and mmap_fallback.go. To add support for a new architecture,
|
||||
// check function mmap in src/syscall/syscall_*_*.go or
|
||||
// src/syscall/zsyscall_*_*.go in Go's source code.
|
||||
p, err := mmapSyscall(0, uintptr(size+pageSize), syscall.PROT_READ|syscall.PROT_WRITE, syscall.MAP_PRIVATE|syscall.MAP_ANON, -1, 0)
|
||||
up, err := unix.MmapPtr(-1, 0, nil, uintptr(size+pageSize), unix.PROT_READ|unix.PROT_WRITE, unix.MAP_PRIVATE|unix.MAP_ANON)
|
||||
if err != nil {
|
||||
return 0, 0, err
|
||||
}
|
||||
|
||||
p := uintptr(up)
|
||||
n := size + pageSize
|
||||
if p&uintptr(osPageMask) != 0 {
|
||||
panic("internal error")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue