Implemented FooID.
parent
8a4e3f242d
commit
19c26cc2e8
|
@ -71,7 +71,7 @@ func NewCachingFS(
|
||||||
lookupEntryTimeout time.Duration,
|
lookupEntryTimeout time.Duration,
|
||||||
getattrTimeout time.Duration) (fs CachingFS, err error) {
|
getattrTimeout time.Duration) (fs CachingFS, err error) {
|
||||||
cfs := &cachingFS{
|
cfs := &cachingFS{
|
||||||
fooID: ((fuse.RootInodeID + 1 + numInodes - 1) / numInodes) + fooOffset,
|
baseID: (fuse.RootInodeID + 1 + numInodes - 1) / numInodes,
|
||||||
mtime: time.Now(),
|
mtime: time.Now(),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -94,7 +94,7 @@ type cachingFS struct {
|
||||||
fuseutil.NotImplementedFileSystem
|
fuseutil.NotImplementedFileSystem
|
||||||
mu syncutil.InvariantMutex
|
mu syncutil.InvariantMutex
|
||||||
|
|
||||||
// The current ID of foo.
|
// The current ID of the lowest numbered non-root inode.
|
||||||
//
|
//
|
||||||
// INVARIANT: FooID() > fuse.RootInodeID
|
// INVARIANT: FooID() > fuse.RootInodeID
|
||||||
// INVARIANT: DirID() > fuse.RootInodeID
|
// INVARIANT: DirID() > fuse.RootInodeID
|
||||||
|
@ -105,7 +105,7 @@ type cachingFS struct {
|
||||||
// INVARIANT: BarID() % numInodes == barOffset
|
// INVARIANT: BarID() % numInodes == barOffset
|
||||||
//
|
//
|
||||||
// GUARDED_BY(mu)
|
// GUARDED_BY(mu)
|
||||||
fooID fuse.InodeID
|
baseID fuse.InodeID
|
||||||
|
|
||||||
// GUARDED_BY(mu)
|
// GUARDED_BY(mu)
|
||||||
mtime time.Time
|
mtime time.Time
|
||||||
|
@ -114,7 +114,12 @@ type cachingFS struct {
|
||||||
func (fs *cachingFS) checkInvariants()
|
func (fs *cachingFS) checkInvariants()
|
||||||
|
|
||||||
// LOCKS_EXCLUDED(fs.mu)
|
// LOCKS_EXCLUDED(fs.mu)
|
||||||
func (fs *cachingFS) FooID() fuse.InodeID
|
func (fs *cachingFS) FooID() fuse.InodeID {
|
||||||
|
fs.mu.Lock()
|
||||||
|
defer fs.mu.Unlock()
|
||||||
|
|
||||||
|
return fs.baseID + fooOffset
|
||||||
|
}
|
||||||
|
|
||||||
// LOCKS_EXCLUDED(fs.mu)
|
// LOCKS_EXCLUDED(fs.mu)
|
||||||
func (fs *cachingFS) DirID() fuse.InodeID
|
func (fs *cachingFS) DirID() fuse.InodeID
|
||||||
|
|
Loading…
Reference in New Issue