Documentation
¶
Overview ¶
Package proc implements a partial in-memory file system for procfs.
Index ¶
Constants ¶
const (
// Name is the default filesystem name.
Name = "proc"
)
Variables ¶
This section is empty.
Functions ¶
func GetMetadata ¶
func GetMetadata(ctx context.Context, mm *mm.MemoryManager, buf *bytes.Buffer, t MetadataType) error
GetMetadata fetches the process's metadata of type t and writes it into buf. The process is identified by mm.
func ParseInt32Vec ¶
ParseInt32Vec interprets src as string encoding slice of int32, and returns the parsed value and the number of bytes read.
The numbers of int32 will be populated even if an error is returned eventually.
Types ¶
type FilesystemType ¶
type FilesystemType struct{}
FilesystemType is the factory class for procfs.
+stateify savable
func (FilesystemType) GetFilesystem ¶
func (ft FilesystemType) GetFilesystem(ctx context.Context, vfsObj *vfs.VirtualFilesystem, creds *auth.Credentials, source string, opts vfs.GetFilesystemOptions) (*vfs.Filesystem, *vfs.Dentry, error)
GetFilesystem implements vfs.FilesystemType.GetFilesystem.
func (FilesystemType) Name ¶
func (FilesystemType) Name() string
Name implements vfs.FilesystemType.Name.
func (FilesystemType) Release ¶
func (FilesystemType) Release(ctx context.Context)
Release implements vfs.FilesystemType.Release.
type InternalData ¶
type InternalData struct {
// AppDrivenCheckpointEnabled indicates whether application driven
// checkpointing functionality is enabled via files in /proc/gvisor/.
AppDrivenCheckpointEnabled bool
// SaveTriggerEnabled indicates whether the application can trigger a
// checkpoint by writing to /proc/gvisor/checkpoint.
SaveTriggerEnabled bool
// FSCheckpointEnabled indicates whether the application can trigger a
// filesystem checkpoint by writing to /proc/gvisor/fscheckpoint.
FSCheckpointEnabled bool
// GVisorMarkerFile indicates whether a file named gvisor/kernel_is_gvisor
// should exist in the procfs.
GVisorMarkerFile bool
// OverrideProcs is a list of proc files to override with stubs. The
// /proc/ prefix is removed (e.g., this contains filenames like
// "kallsyms").
OverrideProcs []string
// Cgroups-internal data.
Cgroups map[string]string
}
InternalData contains internal data passed in to the procfs mount via vfs.GetFilesystemOptions.InternalData.
+stateify savable
type MetadataType ¶
type MetadataType int
MetadataType enumerates the types of metadata that is exposed through proc.
const ( // Cmdline represents /proc/[pid]/cmdline. Cmdline MetadataType = iota // Environ represents /proc/[pid]/environ. Environ )