Replace pkg/refs with pkg/refsvfs2.

All VFS1 only bits have been deleted.

Updates #1624

PiperOrigin-RevId: 492273183
This commit is contained in:
Ayush Ranjan
2022-12-01 12:46:11 -08:00
committed by gVisor bot
parent 289e455495
commit 175db901ca
113 changed files with 209 additions and 942 deletions
-1
View File
@@ -105,7 +105,6 @@ go_library(
"//pkg/hostarch",
"//pkg/log",
"//pkg/refs",
"//pkg/refsvfs2",
"//pkg/sentry/arch",
"//pkg/sentry/fsimpl/lock",
"//pkg/sentry/kernel/auth",
+10 -10
View File
@@ -42,7 +42,7 @@ import (
"gvisor.dev/gvisor/pkg/context"
"gvisor.dev/gvisor/pkg/errors/linuxerr"
"gvisor.dev/gvisor/pkg/fspath"
"gvisor.dev/gvisor/pkg/refsvfs2"
"gvisor.dev/gvisor/pkg/refs"
"gvisor.dev/gvisor/pkg/sentry/kernel/auth"
"gvisor.dev/gvisor/pkg/sentry/memmap"
"gvisor.dev/gvisor/pkg/sentry/vfs"
@@ -527,7 +527,7 @@ func (fs *filesystem) newDentry() *dentry {
}
d.lowerVDs = d.inlineLowerVDs[:0]
d.vfsd.Init(d)
refsvfs2.Register(d)
refs.Register(d)
return d
}
@@ -537,7 +537,7 @@ func (d *dentry) IncRef() {
// d.checkDropLocked().
r := d.refs.Add(1)
if d.LogRefs() {
refsvfs2.LogIncRef(d, r)
refs.LogIncRef(d, r)
}
}
@@ -550,7 +550,7 @@ func (d *dentry) TryIncRef() bool {
}
if d.refs.CompareAndSwap(r, r+1) {
if d.LogRefs() {
refsvfs2.LogTryIncRef(d, r+1)
refs.LogTryIncRef(d, r+1)
}
return true
}
@@ -561,7 +561,7 @@ func (d *dentry) TryIncRef() bool {
func (d *dentry) DecRef(ctx context.Context) {
r := d.refs.Add(-1)
if d.LogRefs() {
refsvfs2.LogDecRef(d, r)
refs.LogDecRef(d, r)
}
if r == 0 {
d.fs.renameMu.Lock()
@@ -575,7 +575,7 @@ func (d *dentry) DecRef(ctx context.Context) {
func (d *dentry) decRefLocked(ctx context.Context) {
r := d.refs.Add(-1)
if d.LogRefs() {
refsvfs2.LogDecRef(d, r)
refs.LogDecRef(d, r)
}
if r == 0 {
d.checkDropLocked(ctx)
@@ -645,20 +645,20 @@ func (d *dentry) destroyLocked(ctx context.Context) {
// locking d.fs.renameMu.
d.parent.decRefLocked(ctx)
}
refsvfs2.Unregister(d)
refs.Unregister(d)
}
// RefType implements refsvfs2.CheckedObject.Type.
// RefType implements refs.CheckedObject.Type.
func (d *dentry) RefType() string {
return "overlay.dentry"
}
// LeakMessage implements refsvfs2.CheckedObject.LeakMessage.
// LeakMessage implements refs.CheckedObject.LeakMessage.
func (d *dentry) LeakMessage() string {
return fmt.Sprintf("[overlay.dentry %p] reference count of %d instead of -1", d, d.refs.Load())
}
// LogRefs implements refsvfs2.CheckedObject.LogRefs.
// LogRefs implements refs.CheckedObject.LogRefs.
//
// This should only be set to true for debugging purposes, as it can generate an
// extremely large amount of output and drastically degrade performance.
+2 -2
View File
@@ -15,11 +15,11 @@
package overlay
import (
"gvisor.dev/gvisor/pkg/refsvfs2"
"gvisor.dev/gvisor/pkg/refs"
)
func (d *dentry) afterLoad() {
if d.refs.Load() != -1 {
refsvfs2.Register(d)
refs.Register(d)
}
}