Messages in this thread | | | Date | Tue, 23 Dec 2014 11:58:03 -0600 | From | Eric Biggers <> | Subject | [BUG] fuse: request prepared before protocol version is known |
| |
I am using Linux 3.19-rc1 and I encountered a bug where stat() would sporatically fail with EIO when called on a file in a FUSE filesystem very shortly after that filesystem has been mounted. This is a regression caused by commit 7078187a: "fuse: introduce fuse_simple_request() helper".
The underlying issue is that the arguments to the FUSE request are being initialized before the protocol version (fc->minor) is known. This was not a problem with the old code because fuse_get_req() will wait until the channel has been initialized.
The only potential solutions I have in mind are adding an explicit waits in all the needed places, or reverting the commit.
Eric
| |