mirror of
https://github.com/hanzoai/visor.git
synced 2026-09-24 17:04:14 +00:00
184 lines
4.1 KiB
Python
184 lines
4.1 KiB
Python
load("//pkg/sync/locking:locking.bzl", "declare_mutex", "declare_rwmutex")
|
|
load("//tools:defs.bzl", "go_library", "go_test")
|
|
load("//tools/go_generics:defs.bzl", "go_template_instance")
|
|
|
|
package(default_applicable_licenses = ["//:license"])
|
|
|
|
licenses(["notice"])
|
|
|
|
go_template_instance(
|
|
name = "dentry_list",
|
|
out = "dentry_list.go",
|
|
package = "tmpfs",
|
|
prefix = "dentry",
|
|
template = "//pkg/ilist:generic_list",
|
|
types = {
|
|
"Element": "*dentry",
|
|
"Linker": "*dentry",
|
|
},
|
|
)
|
|
|
|
go_template_instance(
|
|
name = "fstree",
|
|
out = "fstree.go",
|
|
package = "tmpfs",
|
|
prefix = "generic",
|
|
template = "//pkg/sentry/vfs/genericfstree:generic_fstree",
|
|
types = {
|
|
"Dentry": "dentry",
|
|
"Filesystem": "filesystem",
|
|
},
|
|
)
|
|
|
|
go_template_instance(
|
|
name = "inode_refs",
|
|
out = "inode_refs.go",
|
|
package = "tmpfs",
|
|
prefix = "inode",
|
|
template = "//pkg/refs:refs_template",
|
|
types = {
|
|
"T": "inode",
|
|
},
|
|
)
|
|
|
|
declare_rwmutex(
|
|
name = "ancestry_mutex",
|
|
out = "ancestry_mutex.go",
|
|
package = "tmpfs",
|
|
prefix = "ancestry",
|
|
)
|
|
|
|
declare_rwmutex(
|
|
name = "filesystem_mutex",
|
|
out = "filesystem_mutex.go",
|
|
package = "tmpfs",
|
|
prefix = "filesystem",
|
|
)
|
|
|
|
declare_mutex(
|
|
name = "inode_mutex",
|
|
out = "inode_mutex.go",
|
|
package = "tmpfs",
|
|
prefix = "inode",
|
|
)
|
|
|
|
declare_mutex(
|
|
name = "iter_mutex",
|
|
out = "iter_mutex.go",
|
|
package = "tmpfs",
|
|
prefix = "iter",
|
|
)
|
|
|
|
declare_mutex(
|
|
name = "pages_used_mutex",
|
|
out = "pages_used_mutex.go",
|
|
package = "tmpfs",
|
|
prefix = "pagesUsed",
|
|
)
|
|
|
|
go_library(
|
|
name = "tmpfs",
|
|
srcs = [
|
|
"ancestry_mutex.go",
|
|
"dentry_list.go",
|
|
"device_file.go",
|
|
"directory.go",
|
|
"filesystem.go",
|
|
"filesystem_mutex.go",
|
|
"fscheckpoint.go",
|
|
"fstree.go",
|
|
"inode_mutex.go",
|
|
"inode_refs.go",
|
|
"iter_mutex.go",
|
|
"named_pipe.go",
|
|
"pages_used_mutex.go",
|
|
"regular_file.go",
|
|
"save_restore.go",
|
|
"socket_file.go",
|
|
"symlink.go",
|
|
"tar.go",
|
|
"tmpfs.go",
|
|
],
|
|
imports = [
|
|
"gvisor.dev/gvisor/pkg/sentry/checkpoint",
|
|
"gvisor.dev/gvisor/pkg/sentry/vfs",
|
|
],
|
|
marshal = True,
|
|
visibility = ["//pkg/sentry:internal"],
|
|
deps = [
|
|
"//pkg/abi/linux",
|
|
"//pkg/atomicbitops",
|
|
"//pkg/context",
|
|
"//pkg/errors/linuxerr",
|
|
"//pkg/fd",
|
|
"//pkg/fspath",
|
|
"//pkg/fsutil",
|
|
"//pkg/hostarch",
|
|
"//pkg/log",
|
|
"//pkg/marshal",
|
|
"//pkg/refs",
|
|
"//pkg/safemem",
|
|
"//pkg/sentry/arch",
|
|
"//pkg/sentry/checkpoint",
|
|
"//pkg/sentry/fsimpl/lock",
|
|
"//pkg/sentry/fsmetric",
|
|
"//pkg/sentry/fsutil",
|
|
"//pkg/sentry/hostfd",
|
|
"//pkg/sentry/kernel/auth",
|
|
"//pkg/sentry/kernel/pipe",
|
|
"//pkg/sentry/ktime",
|
|
"//pkg/sentry/memmap",
|
|
"//pkg/sentry/pgalloc",
|
|
"//pkg/sentry/platform",
|
|
"//pkg/sentry/socket/unix/transport",
|
|
"//pkg/sentry/uniqueid",
|
|
"//pkg/sentry/usage",
|
|
"//pkg/sentry/vfs",
|
|
"//pkg/sentry/vfs/memxattr",
|
|
"//pkg/sync",
|
|
"//pkg/sync/locking",
|
|
"//pkg/usermem",
|
|
],
|
|
)
|
|
|
|
go_test(
|
|
name = "benchmark_test",
|
|
size = "small",
|
|
srcs = ["benchmark_test.go"],
|
|
deps = [
|
|
":tmpfs",
|
|
"//pkg/abi/linux",
|
|
"//pkg/fspath",
|
|
"//pkg/refs",
|
|
"//pkg/sentry/contexttest",
|
|
"//pkg/sentry/kernel/auth",
|
|
"//pkg/sentry/vfs",
|
|
],
|
|
)
|
|
|
|
go_test(
|
|
name = "tmpfs_test",
|
|
size = "small",
|
|
srcs = [
|
|
"pipe_test.go",
|
|
"regular_file_test.go",
|
|
"stat_test.go",
|
|
"tar_test.go",
|
|
"tmpfs_test.go",
|
|
],
|
|
library = ":tmpfs",
|
|
deps = [
|
|
"//pkg/abi/linux",
|
|
"//pkg/atomicbitops",
|
|
"//pkg/context",
|
|
"//pkg/errors/linuxerr",
|
|
"//pkg/fspath",
|
|
"//pkg/hostarch",
|
|
"//pkg/sentry/contexttest",
|
|
"//pkg/sentry/fsimpl/lock",
|
|
"//pkg/sentry/kernel/auth",
|
|
"//pkg/sentry/vfs",
|
|
"//pkg/usermem",
|
|
],
|
|
)
|