Commit 6d86c5dc authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent c49c7b5c
...@@ -415,16 +415,24 @@ func (sk *FileSock) Close() error { ...@@ -415,16 +415,24 @@ func (sk *FileSock) Close() error {
return err return err
} }
// Flush implements nodefs.File to handle close(file) call. // Release implements nodefs.File to handle when last user reference to the file is gone.
// XXX -> Release? //
// Note: it is not Flush, since Fush is called on close(file) and in general
// multiple time (e.g. in case of duplicated file descriptor).
//
// XXX -> call dtor on release? // XXX -> call dtor on release?
func (f *skFile) Flush() fuse.Status { func (f *skFile) Release() {
err := f.rx.Close() err := f.rx.Close()
err2 := f.tx.Close() err2 := f.tx.Close()
if err == nil { if err == nil {
err = err2 err = err2
} }
return err2LogStatus(err)
// the kernel ignores any error return from release.
// close on pipes always returns nil and can be called multiple times.
if err != nil {
panic(err)
}
} }
......
...@@ -1409,7 +1409,6 @@ func (wlink *WatchLink) setupWatch(ctx context.Context, foid zodb.Oid, at zodb.T ...@@ -1409,7 +1409,6 @@ func (wlink *WatchLink) setupWatch(ctx context.Context, foid zodb.Oid, at zodb.T
for blk, rev := range toPin { for blk, rev := range toPin {
blk := blk blk := blk
rev := rev rev := rev
//fmt.Printf("S: watch: -> pin #%d @%s\n", blk, rev)
wg.Go(func() error { wg.Go(func() error {
return w.pin(ctx, blk, rev) return w.pin(ctx, blk, rev)
}) })
......
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