From: Miklos S. <mi...@sz...> - 2012-01-23 16:39:18
|
Andrew Tomazos <an...@to...> writes: > Miklos, > > I took a look at your patch. I find that architecturally the cleanest > way to terminate off a blocking queue is to add a unique shutdown > message as a queue item, rather than having a separate flag and trying > to interrupt the block. In this case this would mean replacing the > exit flag, with some sort of shutdown request that gets injected into > the /dev/fuse handle incoming requests. Perhaps it can be written to > /dev/fuse, go through the kernel module (with the kernel module taking > some action on it as well, perhaps refusing any more requests for > example) and then be read off /dev/fuse and come through the same as > any other request, the only difference being is that after it is > processed it causes the event loop to exit. Well, there's an interface for aboring the filesystem, which is I think sort of what you are describing: echo 1 > /sys/fs/fuse/connections/$DEV/abort where $DEV is the device number of the fuse filesystem. Thanks, Miklos |