On 05/08/2012 04:05 PM, Christoph Hellwig wrote: >> Fuse support async reads by using threads to send requests from read(), >> > so sheepfs which export sheepfs volume as a file make use of this >> > feature too and thus will get a high concurrent read requests in >> > sheepfs_read() for volume. Every read() need a socket fd to transport >> > data between the file and the sheep storage. I am planing to implement a >> > socket pool to accelerate this process. So I want to implement this >> > socket pool no top of a lock-free data structure. > That would be in a different daemon from "sheep", right? (Sorry, didn't > have time to read through The sheepfs patches yet). > Yes, I am going to implement it as a standalone daemon. > Using RCU in a different daemon architecture is completely fine for me. > Using the urcu lib atomic in the sheep daemon if is also very welcome by > me if it doesn't drag the actual rcu implementation in. Yes, those atomic operation is completely inline function in the header, doesn't have any thing to do with the actual RCU stuff. I can submit a patch to only check the header existence for sheep deamon if you are fine with it, then we can move on without interfering each other. Thanks, Yuan |