Commit 7c2e8281 authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent 9b5b068c
...@@ -2064,6 +2064,10 @@ func (root *Root) lookup(name string, fctx *fuse.Context) (_ *Head, err error) { ...@@ -2064,6 +2064,10 @@ func (root *Root) lookup(name string, fctx *fuse.Context) (_ *Head, err error) {
} }
revDir = &Head{ revDir = &Head{
// XXX how to test forgets:
// echo 2 >/proc/sys/vm/drop_caches (root)
// mount -oremount $mntpt (root ?)
// notify invalidate dentry from inside fs
fsNode: newFSNode(&fsOptions{Sticky: false}), // XXX + Head.OnForget() -> del root.revTab[] fsNode: newFSNode(&fsOptions{Sticky: false}), // XXX + Head.OnForget() -> del root.revTab[]
rev: rev, rev: rev,
zconn: zconnRev, // XXX + Head.OnForget() -> release zconn (= abort zconn.txnCtx) zconn: zconnRev, // XXX + Head.OnForget() -> release zconn (= abort zconn.txnCtx)
...@@ -2475,6 +2479,7 @@ func _main() (err error) { ...@@ -2475,6 +2479,7 @@ func _main() (err error) {
} }
// wait for unmount // wait for unmount
// XXX the kernel does not sentd FORGETs on unmount - release left node resources ourselves?
<-serveCtx.Done() <-serveCtx.Done()
log.Infof("stop %q %q", mntpt, zurl) log.Infof("stop %q %q", mntpt, zurl)
return nil // XXX serveErr | zwatchErr ? return nil // XXX serveErr | zwatchErr ?
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment