Skip to content

Instantly share code, notes, and snippets.

@dustin
Last active January 1, 2016 13:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dustin/8154060 to your computer and use it in GitHub Desktop.
Save dustin/8154060 to your computer and use it in GitHub Desktop.
fuse debug
# when inside the directory (using .)
# test program works correctly to completion
2013/12/27 15:30:18 fuse req: Access [ID=0xf Node=0x9 Uid=501 Gid=20 Pid=496] mask=0x4
2013/12/27 15:30:18 fuse req: Access [ID=0xd Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:18 fuse req: Access [ID=0x11 Node=0x8 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:18 fuse req: Access [ID=0x12 Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:18 fuse req: Access [ID=0x13 Node=0x8 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:18 fuse req: Access [ID=0x2 Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x0
2013/12/27 15:30:18 fuse req: Access [ID=0x3 Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x0
2013/12/27 15:30:18 fuse req: Access [ID=0xa Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:18 fuse req: Access [ID=0x14 Node=0x8 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:18 fuse req: Access [ID=0x15 Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:18 fuse req: Lookup [ID=0x0 Node=0x9 Uid=501 Gid=20 Pid=38] "x"
2013/12/27 15:30:18 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:18 fuse req: Access [ID=0x1 Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x4
2013/12/27 15:30:20 fuse req: Access [ID=0x4 Node=0x6 Uid=501 Gid=20 Pid=5304] mask=0x1
2013/12/27 15:30:20 fuse req: Getattr [ID=0x5 Node=0x6 Uid=501 Gid=20 Pid=5304]
2013/12/27 15:30:20 fuse req: Access [ID=0x6 Node=0x6 Uid=501 Gid=20 Pid=5304] mask=0x0
2013/12/27 15:30:20 fuse req: Access [ID=0x7 Node=0x6 Uid=501 Gid=20 Pid=5304] mask=0x4
2013/12/27 15:30:20 fuse req: Open [ID=0x8 Node=0x6 Uid=501 Gid=20 Pid=5304] dir=true fl=0 mode=D---------
2013/12/27 15:30:20 fuse req: Access [ID=0x9 Node=0x6 Uid=501 Gid=20 Pid=5304] mask=0x4
2013/12/27 15:30:20 fuse req: Access [ID=0x16 Node=0x6 Uid=501 Gid=20 Pid=5304] mask=0x4
2013/12/27 15:30:20 fuse req: Statfs [ID=0xb Node=0x1 Uid=501 Gid=20 Pid=5304]
2013/12/27 15:30:20 fuse req: Read [ID=0x17 Node=0x6 Uid=501 Gid=20 Pid=5304] 0x1 1536 @0x0 dir=true
2013/12/27 15:30:20 fuse req: Read [ID=0xe Node=0x6 Uid=501 Gid=20 Pid=5304] 0x1 1536 @0x40 dir=true
2013/12/27 15:30:20 fuse req: Access [ID=0x10 Node=0x6 Uid=501 Gid=20 Pid=5304] mask=0x4
2013/12/27 15:30:20 fuse req: Statfs [ID=0xc Node=0x1 Uid=501 Gid=20 Pid=5304]
2013/12/27 15:30:20 fuse req: Read [ID=0xf Node=0x6 Uid=501 Gid=20 Pid=5304] 0x1 1536 @0x0 dir=true
2013/12/27 15:30:20 fuse req: Read [ID=0xd Node=0x6 Uid=501 Gid=20 Pid=5304] 0x1 1536 @0x40 dir=true
2013/12/27 15:30:20 fuse req: Release [ID=0x11 Node=0x6 Uid=501 Gid=20 Pid=5304] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:30:23 fuse req: Access [ID=0x12 Node=0x6 Uid=501 Gid=20 Pid=587] mask=0x1
2013/12/27 15:30:23 fuse req: Getattr [ID=0x13 Node=0x6 Uid=501 Gid=20 Pid=587]
2013/12/27 15:30:23 fuse req: Access [ID=0x2 Node=0x6 Uid=501 Gid=20 Pid=587] mask=0x4
2013/12/27 15:30:23 fuse req: Open [ID=0x3 Node=0x6 Uid=501 Gid=20 Pid=587] dir=true fl=0 mode=D---------
2013/12/27 15:30:23 fuse req: Statfs [ID=0xa Node=0x1 Uid=501 Gid=20 Pid=587]
2013/12/27 15:30:23 fuse req: Read [ID=0x14 Node=0x6 Uid=501 Gid=20 Pid=587] 0x1 1536 @0x0 dir=true
2013/12/27 15:30:23 fuse req: Read [ID=0x15 Node=0x6 Uid=501 Gid=20 Pid=587] 0x1 1536 @0x40 dir=true
2013/12/27 15:30:23 fuse req: Release [ID=0x0 Node=0x6 Uid=501 Gid=20 Pid=587] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:30:23 fuse req: Access [ID=0x1 Node=0x6 Uid=501 Gid=20 Pid=5305] mask=0x0
2013/12/27 15:30:23 fuse req: Access [ID=0x4 Node=0x6 Uid=501 Gid=20 Pid=5305] mask=0x0
2013/12/27 15:30:23 fuse req: Getattr [ID=0x5 Node=0x6 Uid=501 Gid=20 Pid=5305]
2013/12/27 15:30:23 fuse req: Lookup [ID=0x6 Node=0x6 Uid=501 Gid=20 Pid=5309] "x"
2013/12/27 15:30:23 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Access [ID=0x7 Node=0x6 Uid=501 Gid=20 Pid=5309] mask=0x2
2013/12/27 15:30:23 fuse req: Create [ID=0x8 Node=0x6 Uid=501 Gid=20 Pid=5309] "x" fl=514 mode=-rw-r--r--
2013/12/27 15:30:23 fuse req: Lookup [ID=0x9 Node=0x6 Uid=501 Gid=20 Pid=5309] "._x"
2013/12/27 15:30:23 mutDir("test").Lookup("._x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Getattr [ID=0x16 Node=0xa Uid=0 Gid=0 Pid=0]
2013/12/27 15:30:23 fuse req: Flush [ID=0xb Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=0x0 lk=0x0
2013/12/27 15:30:23 fuse req: Release [ID=0x17 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:30:23 mutFileHandle release.
2013/12/27 15:30:23 fuse req: Access [ID=0xe Node=0x1 Uid=501 Gid=20 Pid=496] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0x10 Node=0x8 Uid=501 Gid=20 Pid=496] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0xc Node=0x9 Uid=501 Gid=20 Pid=496] mask=0x4
2013/12/27 15:30:23 fuse req: Access [ID=0xf Node=0x1 Uid=501 Gid=20 Pid=422] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0xd Node=0x8 Uid=501 Gid=20 Pid=422] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0x11 Node=0x9 Uid=501 Gid=20 Pid=422] mask=0x1
2013/12/27 15:30:23 fuse req: Lookup [ID=0x12 Node=0x9 Uid=501 Gid=20 Pid=422] "x"
2013/12/27 15:30:23 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Access [ID=0x13 Node=0xa Uid=501 Gid=20 Pid=5309] mask=0x0
2013/12/27 15:30:23 fuse req: Getattr [ID=0x2 Node=0xa Uid=501 Gid=20 Pid=5309]
2013/12/27 15:30:23 fuse req: Access [ID=0x3 Node=0xa Uid=501 Gid=20 Pid=5309] mask=0x2
2013/12/27 15:30:23 fuse req: Open [ID=0xa Node=0xa Uid=501 Gid=20 Pid=5309] dir=false fl=1 mode=D---------
2013/12/27 15:30:23 mutFile.Open: sha1-d7da1173b048211ed4699ab2e2c2be37dc744173: content: sha1-96d914b12074ce2de713c7bc869abf17336ed325 dir=false flags=1 mode=D---------
2013/12/27 15:30:23 mutFile.Open returning read-write filehandle
2013/12/27 15:30:23 fuse req: Write [ID=0x14 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 5 @0 fl=0
2013/12/27 15:30:23 mutFileHandle.Write("test/x", at 0, flags 0, "foo, ") = 5, <nil>
2013/12/27 15:30:23 mutFile.setSizeAtLeast(5). old size = 0
2013/12/27 15:30:23 fuse req: Flush [ID=0x15 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=0x0 lk=0x0
2013/12/27 15:30:23 fuse req: Release [ID=0x0 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=1 rfl=0 owner=0x0
2013/12/27 15:30:23 mutFileHandle release.
2013/12/27 15:30:23 fuse req: Getattr [ID=0x1 Node=0xa Uid=0 Gid=0 Pid=0]
2013/12/27 15:30:23 fuse req: Access [ID=0x4 Node=0xa Uid=501 Gid=20 Pid=5309] mask=0x2
2013/12/27 15:30:23 fuse req: Open [ID=0x5 Node=0xa Uid=501 Gid=20 Pid=5309] dir=false fl=1 mode=D---------
2013/12/27 15:30:23 mutFile.Open: sha1-d7da1173b048211ed4699ab2e2c2be37dc744173: content: sha1-7fa15b1807f7fdb07793ac1fc4e306a372ea4fcb dir=false flags=1 mode=D---------
2013/12/27 15:30:23 mutFile.Open returning read-write filehandle
2013/12/27 15:30:23 fuse req: Write [ID=0x6 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 9 @0 fl=0
2013/12/27 15:30:23 mutFileHandle.Write("test/x", at 0, flags 0, "foo, bar\n") = 9, <nil>
2013/12/27 15:30:23 mutFile.setSizeAtLeast(9). old size = 5
2013/12/27 15:30:23 fuse req: Flush [ID=0x7 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=0x0 lk=0x0
2013/12/27 15:30:23 fuse req: Release [ID=0x8 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=1 rfl=0 owner=0x0
2013/12/27 15:30:23 mutFileHandle release.
2013/12/27 15:30:23 fuse req: Access [ID=0x9 Node=0x1 Uid=501 Gid=20 Pid=496] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0x16 Node=0x8 Uid=501 Gid=20 Pid=496] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0xb Node=0x9 Uid=501 Gid=20 Pid=496] mask=0x1
2013/12/27 15:30:23 fuse req: Lookup [ID=0xe Node=0x9 Uid=501 Gid=20 Pid=496] "x"
2013/12/27 15:30:23 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Getattr [ID=0x10 Node=0xa Uid=0 Gid=0 Pid=0]
2013/12/27 15:30:23 fuse req: Access [ID=0xc Node=0xa Uid=501 Gid=20 Pid=5309] mask=0x2
2013/12/27 15:30:23 fuse req: Open [ID=0xf Node=0xa Uid=501 Gid=20 Pid=5309] dir=false fl=1 mode=D---------
2013/12/27 15:30:23 mutFile.Open: sha1-d7da1173b048211ed4699ab2e2c2be37dc744173: content: sha1-c4d15d339c0768caa020bff2fca3396fa1c9804b dir=false flags=1 mode=D---------
2013/12/27 15:30:23 mutFile.Open returning read-write filehandle
2013/12/27 15:30:23 fuse req: Write [ID=0xd Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 23 @0 fl=0
2013/12/27 15:30:23 mutFileHandle.Write("test/x", at 0, flags 0, "foo, bar\nanother line.\n") = 23, <nil>
2013/12/27 15:30:23 mutFile.setSizeAtLeast(23). old size = 9
2013/12/27 15:30:23 fuse req: Flush [ID=0x11 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=0x0 lk=0x0
2013/12/27 15:30:23 fuse req: Lookup [ID=0x12 Node=0x9 Uid=501 Gid=20 Pid=496] "x"
2013/12/27 15:30:23 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Release [ID=0x17 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=1 rfl=0 owner=0x0
2013/12/27 15:30:23 mutFileHandle release.
2013/12/27 15:30:23 fuse req: Getattr [ID=0x13 Node=0xa Uid=0 Gid=0 Pid=0]
2013/12/27 15:30:23 fuse req: Access [ID=0x2 Node=0xa Uid=501 Gid=20 Pid=5309] mask=0x4
2013/12/27 15:30:23 fuse req: Open [ID=0x3 Node=0xa Uid=501 Gid=20 Pid=5309] dir=false fl=0 mode=D---------
2013/12/27 15:30:23 mutFile.Open: sha1-d7da1173b048211ed4699ab2e2c2be37dc744173: content: sha1-5ed9934fff8ffe32c8c79dca510722d5c378043f dir=false flags=0 mode=D---------
2013/12/27 15:30:23 mutFile.Open returning read-only file
2013/12/27 15:30:23 fuse req: Flush [ID=0xa Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=0x0 lk=0x0
2013/12/27 15:30:23 fuse req: Release [ID=0x14 Node=0xa Uid=501 Gid=20 Pid=5309] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:30:23 CAMLI nodeReader RELEASE on sha1-5ed9934fff8ffe32c8c79dca510722d5c378043f
2013/12/27 15:30:23 fuse req: Access [ID=0x15 Node=0xa Uid=501 Gid=20 Pid=5309] mask=0x0
2013/12/27 15:30:23 fuse req: Getattr [ID=0x0 Node=0xa Uid=501 Gid=20 Pid=5309]
2013/12/27 15:30:23 fuse req: Access [ID=0x1 Node=0xa Uid=501 Gid=20 Pid=5309] mask=0x0
2013/12/27 15:30:23 fuse req: Remove [ID=0x4 Node=0x6 Uid=501 Gid=20 Pid=5309] "x" dir=false
2013/12/27 15:30:23 fuse req: Lookup [ID=0x5 Node=0x9 Uid=501 Gid=20 Pid=496] "x"
2013/12/27 15:30:23 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Lookup [ID=0x6 Node=0x6 Uid=501 Gid=20 Pid=5309] "._x"
2013/12/27 15:30:23 mutDir("test").Lookup("._x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Lookup [ID=0x7 Node=0x6 Uid=501 Gid=20 Pid=5309] "x"
2013/12/27 15:30:23 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Access [ID=0x9 Node=0x9 Uid=501 Gid=20 Pid=496] mask=0x4
2013/12/27 15:30:23 fuse req: Access [ID=0x16 Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0xb Node=0x8 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:23 fuse req: Access [ID=0xe Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:23 fuse req: Lookup [ID=0x8 Node=0x9 Uid=501 Gid=20 Pid=38] "x"
2013/12/27 15:30:23 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:30:23 fuse req: Access [ID=0x10 Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x4
2013/12/27 15:30:24 fuse req: Access [ID=0xc Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:24 fuse req: Access [ID=0xf Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:24 fuse req: Access [ID=0xd Node=0x8 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:24 fuse req: Access [ID=0x11 Node=0x8 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:30:24 fuse req: Access [ID=0x12 Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x0
2013/12/27 15:30:24 fuse req: Access [ID=0x17 Node=0x9 Uid=501 Gid=20 Pid=38] mask=0x0
2013/12/27 15:30:24 fuse req: Access [ID=0x13 Node=0x6 Uid=501 Gid=20 Pid=5310] mask=0x0
2013/12/27 15:30:24 fuse req: Getattr [ID=0x2 Node=0x6 Uid=501 Gid=20 Pid=5310]
2013/12/27 15:30:24 fuse req: Access [ID=0x3 Node=0x6 Uid=501 Gid=20 Pid=5310] mask=0x4
2013/12/27 15:30:24 fuse req: Open [ID=0xa Node=0x6 Uid=501 Gid=20 Pid=5310] dir=true fl=0 mode=D---------
2013/12/27 15:30:24 fuse req: Access [ID=0x14 Node=0x6 Uid=501 Gid=20 Pid=5310] mask=0x4
2013/12/27 15:30:24 fuse req: Access [ID=0x15 Node=0x6 Uid=501 Gid=20 Pid=5310] mask=0x4
2013/12/27 15:30:24 fuse req: Statfs [ID=0x0 Node=0x1 Uid=501 Gid=20 Pid=5310]
2013/12/27 15:30:24 fuse req: Read [ID=0x1 Node=0x6 Uid=501 Gid=20 Pid=5310] 0x1 1536 @0x0 dir=true
2013/12/27 15:30:24 fuse req: Read [ID=0x5 Node=0x6 Uid=501 Gid=20 Pid=5310] 0x1 1536 @0x40 dir=true
2013/12/27 15:30:24 fuse req: Access [ID=0x4 Node=0x6 Uid=501 Gid=20 Pid=5310] mask=0x4
2013/12/27 15:30:24 fuse req: Statfs [ID=0x6 Node=0x1 Uid=501 Gid=20 Pid=5310]
2013/12/27 15:30:24 fuse req: Read [ID=0x7 Node=0x6 Uid=501 Gid=20 Pid=5310] 0x1 1536 @0x0 dir=true
2013/12/27 15:30:24 fuse req: Read [ID=0x9 Node=0x6 Uid=501 Gid=20 Pid=5310] 0x1 1536 @0x40 dir=true
2013/12/27 15:30:24 fuse req: Release [ID=0x16 Node=0x6 Uid=501 Gid=20 Pid=5310] 0x1 fl=0 rfl=0 owner=0x0
# When outside of the directory (using a full path)
# Test program gets confused and dies, leaving a directory where a file should be.
2013/12/27 15:25:09 fuse req: Access [ID=0x12 Node=0x1 Uid=501 Gid=20 Pid=587] mask=0x4
2013/12/27 15:25:09 fuse req: Open [ID=0x13 Node=0x1 Uid=501 Gid=20 Pid=587] dir=true fl=0 mode=D---------
2013/12/27 15:25:09 fuse req: Statfs [ID=0x2 Node=0x1 Uid=501 Gid=20 Pid=587]
2013/12/27 15:25:09 fuse req: Read [ID=0x3 Node=0x1 Uid=501 Gid=20 Pid=587] 0x1 1536 @0x0 dir=true
2013/12/27 15:25:09 fuse req: Release [ID=0x14 Node=0x1 Uid=501 Gid=20 Pid=587] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:25:09 fuse req: Access [ID=0x15 Node=0x2 Uid=501 Gid=20 Pid=587] mask=0x4
2013/12/27 15:25:09 fuse req: Open [ID=0x0 Node=0x2 Uid=501 Gid=20 Pid=587] dir=true fl=0 mode=D---------
2013/12/27 15:25:09 fuse req: Statfs [ID=0x1 Node=0x1 Uid=501 Gid=20 Pid=587]
2013/12/27 15:25:09 fuse req: Read [ID=0x4 Node=0x2 Uid=501 Gid=20 Pid=587] 0x1 1536 @0x0 dir=true
2013/12/27 15:25:09 fuse req: Release [ID=0x5 Node=0x2 Uid=501 Gid=20 Pid=587] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:25:09 fuse req: Lookup [ID=0x6 Node=0x3 Uid=501 Gid=20 Pid=5288] "x"
2013/12/27 15:25:09 mutDir("test").Lookup("x") = <nil>, no such file or directory
2013/12/27 15:25:09 fuse req: Access [ID=0x7 Node=0x3 Uid=501 Gid=20 Pid=5288] mask=0x2
2013/12/27 15:25:09 fuse req: Getattr [ID=0x8 Node=0x3 Uid=501 Gid=20 Pid=5288]
2013/12/27 15:25:09 fuse req: Create [ID=0x9 Node=0x3 Uid=501 Gid=20 Pid=5288] "x" fl=514 mode=-rw-r--r--
2013/12/27 15:25:09 fuse req: Access [ID=0x16 Node=0x3 Uid=501 Gid=20 Pid=5288] mask=0x1
2013/12/27 15:25:09 fuse req: Lookup [ID=0xb Node=0x3 Uid=501 Gid=20 Pid=5288] "._x"
2013/12/27 15:25:09 mutDir("test").Lookup("._x") = <nil>, no such file or directory
2013/12/27 15:25:09 fuse req: Getattr [ID=0x17 Node=0x4 Uid=0 Gid=0 Pid=0]
2013/12/27 15:25:09 fuse req: Flush [ID=0xe Node=0x4 Uid=501 Gid=20 Pid=5288] 0x1 fl=0x0 lk=0x0
2013/12/27 15:25:09 fuse req: Release [ID=0xa Node=0x4 Uid=501 Gid=20 Pid=5288] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:25:09 mutFileHandle release.
2013/12/27 15:25:09 fuse req: Access [ID=0x10 Node=0x1 Uid=501 Gid=20 Pid=496] mask=0x1
2013/12/27 15:25:09 fuse req: Lookup [ID=0xc Node=0x1 Uid=501 Gid=20 Pid=496] "roots"
2013/12/27 15:25:09 fuse req: Access [ID=0xf Node=0x5 Uid=501 Gid=20 Pid=496] mask=0x1
2013/12/27 15:25:09 fuse req: Lookup [ID=0xd Node=0x5 Uid=501 Gid=20 Pid=496] "test"
2013/12/27 15:25:09 fs.roots: Lookup("test")
2013/12/27 15:25:09 fuse req: Access [ID=0x11 Node=0x6 Uid=501 Gid=20 Pid=496] mask=0x4
2013/12/27 15:25:09 fuse req: Access [ID=0x12 Node=0x1 Uid=501 Gid=20 Pid=422] mask=0x1
2013/12/27 15:25:09 fuse req: Access [ID=0x13 Node=0x5 Uid=501 Gid=20 Pid=422] mask=0x1
2013/12/27 15:25:09 fuse req: Access [ID=0x2 Node=0x6 Uid=501 Gid=20 Pid=422] mask=0x1
2013/12/27 15:25:09 fuse req: Lookup [ID=0x3 Node=0x6 Uid=501 Gid=20 Pid=422] "x"
# RACE CONDITION(ish). The "x" we found wasn't fully realized.
# We assume that if we don't know more about it, that it must be a directory,
# so we return a *fs.mutDir
# This is incorrect. If I quit my FUSE app at this point and restart, we'll
# see it as a file, so it *should* be recoverable.
2013/12/27 15:25:09 mutDir("test").Lookup("x") = &fs.mutDir{fs:(*fs.CamliFileSystem)(0xc210073050), permanode:blob.Ref{digest:blob.sha1Digest{0xda, 0x7d, 0x7, 0x1c, 0x34, 0x96, 0x29, 0x5b, 0x17, 0x9a, 0xdb, 0xef, 0x25, 0x38, 0xe, 0xc2, 0x92, 0x8, 0xc0, 0xac}}, parent:(*fs.mutDir)(0xc21014e6c0), name:"x", mu:sync.Mutex{state:0, sema:0x0}, lastPop:time.Time{sec:0, nsec:0x0, loc:(*time.Location)(nil)}, children:map[string]fs.mutFileOrDir(nil)}, <nil>
2013/12/27 15:25:09 fuse req: Access [ID=0x14 Node=0x1 Uid=501 Gid=20 Pid=5288] mask=0x1
2013/12/27 15:25:09 fuse req: Access [ID=0x15 Node=0x5 Uid=501 Gid=20 Pid=5288] mask=0x1
2013/12/27 15:25:09 fuse req: Access [ID=0x0 Node=0x6 Uid=501 Gid=20 Pid=5288] mask=0x1
2013/12/27 15:25:09 fuse req: Access [ID=0x1 Node=0x7 Uid=501 Gid=20 Pid=5288] mask=0x0
2013/12/27 15:25:10 fuse req: Access [ID=0x4 Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:25:10 fuse req: Access [ID=0x5 Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:25:10 fuse req: Access [ID=0x6 Node=0x5 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:25:10 fuse req: Access [ID=0x7 Node=0x5 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:25:10 fuse req: Access [ID=0x8 Node=0x6 Uid=501 Gid=20 Pid=38] mask=0x0
2013/12/27 15:25:10 fuse req: Access [ID=0x9 Node=0x6 Uid=501 Gid=20 Pid=38] mask=0x0
2013/12/27 15:25:10 fuse req: Access [ID=0x16 Node=0x1 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:25:10 fuse req: Access [ID=0xb Node=0x5 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:25:10 fuse req: Access [ID=0x17 Node=0x6 Uid=501 Gid=20 Pid=38] mask=0x1
2013/12/27 15:25:10 fuse req: Access [ID=0xe Node=0x7 Uid=501 Gid=20 Pid=38] mask=0x0
# I was typing up stuff above, so time passed and everything should be invalid.
# Let's list that directory again.
# 15743747690079856987 drwx------ 1 dustin staff 0 Dec 27 15:24 x/
2013/12/27 15:27:53 fuse req: Access [ID=0x10 Node=0x1 Uid=501 Gid=20 Pid=587] mask=0x4
2013/12/27 15:27:53 fuse req: Open [ID=0xc Node=0x1 Uid=501 Gid=20 Pid=587] dir=true fl=0 mode=D---------
2013/12/27 15:27:53 fuse req: Statfs [ID=0xf Node=0x1 Uid=501 Gid=20 Pid=587]
2013/12/27 15:27:53 fuse req: Read [ID=0xd Node=0x1 Uid=501 Gid=20 Pid=587] 0x1 1536 @0x0 dir=true
2013/12/27 15:27:53 fuse req: Release [ID=0x11 Node=0x1 Uid=501 Gid=20 Pid=587] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:27:53 fuse req: Access [ID=0x12 Node=0x1 Uid=501 Gid=20 Pid=587] mask=0x1
2013/12/27 15:27:53 fuse req: Access [ID=0x13 Node=0x5 Uid=501 Gid=20 Pid=587] mask=0x4
2013/12/27 15:27:53 fuse req: Open [ID=0x2 Node=0x5 Uid=501 Gid=20 Pid=587] dir=true fl=0 mode=D---------
2013/12/27 15:27:53 fuse req: Statfs [ID=0x3 Node=0x1 Uid=501 Gid=20 Pid=587]
2013/12/27 15:27:53 fuse req: Read [ID=0xa Node=0x5 Uid=501 Gid=20 Pid=587] 0x1 1536 @0x0 dir=true
2013/12/27 15:27:53 fs.roots: querying
2013/12/27 15:27:53 fuse req: Release [ID=0x14 Node=0x5 Uid=501 Gid=20 Pid=587] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:27:53 fuse req: Access [ID=0x15 Node=0x5 Uid=501 Gid=20 Pid=5293] mask=0x1
2013/12/27 15:27:53 fuse req: Access [ID=0x0 Node=0x6 Uid=501 Gid=20 Pid=5293] mask=0x0
2013/12/27 15:27:53 fuse req: Getattr [ID=0x1 Node=0x6 Uid=501 Gid=20 Pid=5293]
2013/12/27 15:27:53 fuse req: Access [ID=0x4 Node=0x6 Uid=501 Gid=20 Pid=5293] mask=0x4
2013/12/27 15:27:53 fuse req: Open [ID=0x5 Node=0x6 Uid=501 Gid=20 Pid=5293] dir=true fl=0 mode=D---------
2013/12/27 15:27:53 fuse req: Statfs [ID=0x6 Node=0x1 Uid=501 Gid=20 Pid=5293]
2013/12/27 15:27:53 fuse req: Access [ID=0x7 Node=0x6 Uid=501 Gid=20 Pid=5293] mask=0x1
2013/12/27 15:27:53 fuse req: Read [ID=0x8 Node=0x6 Uid=501 Gid=20 Pid=5293] 0x1 1536 @0x0 dir=true
2013/12/27 15:27:53 mutDir("test") appending inode da7d071c3496295b, {Inode:15743747690079856987 Type:0 Name:x}
2013/12/27 15:27:53 fuse req: Access [ID=0x9 Node=0x7 Uid=501 Gid=20 Pid=5293] mask=0x0
2013/12/27 15:27:53 fuse req: Getattr [ID=0x16 Node=0x7 Uid=501 Gid=20 Pid=5293]
2013/12/27 15:27:53 fuse req: Read [ID=0xb Node=0x6 Uid=501 Gid=20 Pid=5293] 0x1 1536 @0x60 dir=true
2013/12/27 15:27:53 fuse req: Release [ID=0x17 Node=0x6 Uid=501 Gid=20 Pid=5293] 0x1 fl=0 rfl=0 owner=0x0
2013/12/27 15:27:53 fuse req: Access [ID=0xe Node=0x7 Uid=501 Gid=20 Pid=5293] mask=0x0
2013/12/27 15:27:53 fuse req: Access [ID=0x10 Node=0x7 Uid=501 Gid=20 Pid=5293] mask=0x4
2013/12/27 15:27:53 fuse req: Lookup [ID=0xc Node=0x6 Uid=501 Gid=20 Pid=5293] "._x"
2013/12/27 15:27:53 mutDir("test").Lookup("._x") = <nil>, no such file or directory
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment