Commit Graph

632 Commits (a573f6e5755225bb2867613f2c35740884836a80)

Author SHA1 Message Date
Aaron Jacobs a573f6e575 The root inode begins with a lookup count of 1.
Cf. jacobsa/fuse@36d7193638
2015-03-30 16:36:28 +11:00
Aaron Jacobs ded5091c2e ForgetFSTest.Open_Foo 2015-03-30 16:35:37 +11:00
Aaron Jacobs f76439120c Check 2015-03-30 16:35:37 +11:00
Aaron Jacobs a787be87bb fsImpl.checkInvariants 2015-03-30 16:35:37 +11:00
Aaron Jacobs b2b1b6a4ef Added fsImpl members. 2015-03-30 16:35:37 +11:00
Aaron Jacobs a37b22d786 fsImpl.Init 2015-03-30 16:35:37 +11:00
Aaron Jacobs 42cefe94f7 Revised a plan. 2015-03-30 16:35:37 +11:00
Aaron Jacobs 8e8c391a21 Made a panic clearer. 2015-03-30 16:35:37 +11:00
Aaron Jacobs faba594f7f ForgetFSTest.SetUp 2015-03-30 16:35:37 +11:00
Aaron Jacobs 36643c8daf Added test names. 2015-03-30 16:35:36 +11:00
Aaron Jacobs d4e690f2f8 Added a test stub. 2015-03-30 16:35:36 +11:00
Aaron Jacobs 987e4f4087 Sketched forgetfs. 2015-03-30 16:35:36 +11:00
Aaron Jacobs 36d7193638 Added a note about nlookup for the root inode.
For #7.
2015-03-30 16:35:17 +11:00
Aaron Jacobs bd16024eec Nailed down the semantics of ForgetInodeOp.
For #7.
2015-03-30 16:00:21 +11:00
Aaron Jacobs 06bacc17a3 Documented the responses that increment the lookup count. 2015-03-30 15:59:41 +11:00
Aaron Jacobs a44e5edb46 Added more info on nlookup incrementing. 2015-03-30 15:54:44 +11:00
Aaron Jacobs bc03335bb2 Added additional field and better documentation for ForgetInodeOp. 2015-03-30 15:53:15 +11:00
Aaron Jacobs 566fb55e84 Max out the size of reads and writes from the kernel.
Fixes googlecloudplatform/gcsfuse#27.
2015-03-26 16:27:21 +11:00
Aaron Jacobs f0d9fada95 Fixed InitResponse logging. 2015-03-26 16:26:35 +11:00
Aaron Jacobs ee7b064667 While I'm at it, also enable large reads.
For googlecloudplatform/gcsfuse#27.
2015-03-26 16:25:01 +11:00
Aaron Jacobs 5dbc3bcd61 Ask for large writes from the kernel.
For googlecloudplatform/gcsfuse#27.
2015-03-26 16:10:07 +11:00
Aaron Jacobs 0e7e9c3f78 Added a memfs test for a large file.
To help investigate googlecloudplatform/gcsfuse#27.
2015-03-26 15:54:17 +11:00
Aaron Jacobs 2222e8d053 Specify that errors from Release{File,Dir}Handle ops are ignored.
Fixes #6.
2015-03-25 11:08:04 +11:00
Aaron Jacobs 14ea5a9db1 Replaced MountedFileSystem.Unmount with a free function.
The free function is more flexible, including being able to be used from
outside the daemon process.
2015-03-25 10:17:11 +11:00
Aaron Jacobs d1186c7579 Fixed a build error. 2015-03-25 10:17:02 +11:00
Aaron Jacobs 32c00cb130 Oops, totally screwed that up. 2015-03-25 10:16:42 +11:00
Aaron Jacobs e2a8e77cdc Replaced MountedFileSystem.Unmount with a free function. 2015-03-25 10:15:43 +11:00
Aaron Jacobs 2c10dd18ca Require FileSystem methods to call Op.Respond.
And provide a helper to make it convenient to do so.

Having the server implementation call Respond makes it unnecessarily tricky to
implement FileSystem methods that continue computations in the background and
return immediately, for example enqueuing writes/flushes for a worker
goroutine.
2015-03-25 10:00:58 +11:00
Aaron Jacobs 5aa47ca47c Fixed memfs. 2015-03-25 10:00:43 +11:00
Aaron Jacobs 74b847919c Fixed flushfs. 2015-03-25 10:00:19 +11:00
Aaron Jacobs d7e70cb7dc Fixed cachingfs. 2015-03-25 10:00:01 +11:00
Aaron Jacobs c1a851403d Added a RespondToOp helper. 2015-03-25 09:59:24 +11:00
Aaron Jacobs e96100b5ac Fixed hellofs. 2015-03-25 09:55:11 +11:00
Aaron Jacobs 6667a7f8f6 Fixed NotImplementedFileSystem. 2015-03-25 09:54:12 +11:00
Aaron Jacobs 93d1bc181f Don't return error from FileSystem methods. 2015-03-25 09:53:26 +11:00
Aaron Jacobs eeac7182e5 Use the FileSystem interface in the samples. 2015-03-25 09:35:51 +11:00
Aaron Jacobs e1e438439c Use FileSystem in memfs. 2015-03-25 09:35:32 +11:00
Aaron Jacobs beb1ac7430 Use FileSystem in flushfs. 2015-03-25 09:33:04 +11:00
Aaron Jacobs e0aecb1d0b Use FileSystem in cachingfs. 2015-03-25 09:31:43 +11:00
Aaron Jacobs a01f4b6ae5 Use FileSystem in hellofs. 2015-03-25 09:29:24 +11:00
Aaron Jacobs 54d3fee527 Restored the FileSystem interface in a new form. 2015-03-25 09:25:48 +11:00
Aaron Jacobs 2c0b99bdce Implemented NewFileSystemServer. 2015-03-25 09:24:44 +11:00
Aaron Jacobs 579e3f648e Added NotImplementedFileSystem methods. 2015-03-25 09:20:54 +11:00
Aaron Jacobs cdfc7045b5 Added a callout to fuseutil.NewFileSystemServer. 2015-03-25 09:18:56 +11:00
Aaron Jacobs 485f5d64fc Declared NotImplementedFileSystem. 2015-03-25 09:17:58 +11:00
Aaron Jacobs 00809e98fe Added a FileSystem interface and declared a function that transforms it. 2015-03-25 09:16:03 +11:00
Aaron Jacobs b5f3f11782 Added callouts to the samples. 2015-03-24 16:41:03 +11:00
Aaron Jacobs 336525bfec Remade the package fuse interface around reading a sequence of op structs.
This aovids the fundamental race in #3.
2015-03-24 16:35:01 +11:00
Aaron Jacobs 2cc1bfaafd Removed some references to FileSystem. 2015-03-24 16:34:43 +11:00
Aaron Jacobs bc5f2bac2d Fixed SetInodeAttributesOp conversion. 2015-03-24 16:32:12 +11:00