ircd uses 100% CPU (possibly related to SSL)
Posted: Wed Dec 22, 2010 10:10 pm
I have two Unreal instances... a hub and a leaf. The hub runs fine but the leaf node frequently spikes to 100% CPU (i've tried with version 3.2.7 and 3.2.8.1). An strace of the process while it's spinning reveals a bunch of gettimeofday() calls:
gettimeofday({1293011289, 452279}, NULL) = 0
gettimeofday({1293011289, 452308}, NULL) = 0
read(6, "", 11) = 0
gettimeofday({1293011289, 452369}, NULL) = 0
read(8, "", 11) = 0
gettimeofday({1293011289, 453113}, NULL) = 0
gettimeofday({1293011289, 453223}, NULL) = 0
select(1024, [1 3], [], NULL, {0, 0}) = 0 (Timeout)
gettimeofday({1293011289, 453324}, NULL) = 0
select(1024, [1 2 3 8], [], NULL, {1, 0}) = 1 (in [8], left {1, 0})
gettimeofday({1293011289, 453432}, NULL) = 0
gettimeofday({1293011289, 453461}, NULL) = 0
the only place in the source where gettimeofday is explicitly specified is in random.c. /proc/sys/kernel/random/entropy_avail goes near zero during this time which makes me think this is definitely related to random number generation or SSL somehow. i use SSL on the server but there are a very small number of users (~20). CPU usage on the hub is effectively zero. any thoughts on how I can troubleshoot this further?
gettimeofday({1293011289, 452279}, NULL) = 0
gettimeofday({1293011289, 452308}, NULL) = 0
read(6, "", 11) = 0
gettimeofday({1293011289, 452369}, NULL) = 0
read(8, "", 11) = 0
gettimeofday({1293011289, 453113}, NULL) = 0
gettimeofday({1293011289, 453223}, NULL) = 0
select(1024, [1 3], [], NULL, {0, 0}) = 0 (Timeout)
gettimeofday({1293011289, 453324}, NULL) = 0
select(1024, [1 2 3 8], [], NULL, {1, 0}) = 1 (in [8], left {1, 0})
gettimeofday({1293011289, 453432}, NULL) = 0
gettimeofday({1293011289, 453461}, NULL) = 0
the only place in the source where gettimeofday is explicitly specified is in random.c. /proc/sys/kernel/random/entropy_avail goes near zero during this time which makes me think this is definitely related to random number generation or SSL somehow. i use SSL on the server but there are a very small number of users (~20). CPU usage on the hub is effectively zero. any thoughts on how I can troubleshoot this further?