I removed libevent support from chunkd, because I felt it was blocking
the multi-threading of chunkd to an unfortunate degree. libevent does
not provide any protection for multiple threads adding and removing
themselves to a single poll-set.
Multi-threading chunkd should enable us to reach our full I/O throughput
potential through parallelization. It will also enable useful
administrative tasks such as background checksum verification.
Jeff
commit 47a916242eb795b27ca86cb68a25135a14741b5f
Author: Jeff Garzik <jeff@xxxxxxxxxx>
Date: Sun Nov 1 23:11:18 2009 -0500
chunkd: drop libevent support, due to lack of thread-friendliness
libevent does not support a single poll-set being manipulated
simultaneously by multiple threads, so it is replaced with a
poll(2)-based mechanism highly similar to cld's.
An epoll mechanism would be a logical next-step.
Signed-off-by: Jeff Garzik <jgarzik@xxxxxxxxxx>
commit 441eb192ef5d68e6d563f045a3c061d9bc403684
Author: Jeff Garzik <jeff@xxxxxxxxxx>
Date: Sun Nov 1 20:39:09 2009 -0500
chunkd: add cli_wr_set_poll() to isolate libevent usage
Signed-off-by: Jeff Garzik <jgarzik@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe hail-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html