aboutsummaryrefslogtreecommitdiff
path: root/src/net.cpp
diff options
context:
space:
mode:
authorGiel van Schijndel <me@mortis.eu>2012-06-24 17:03:57 +0200
committerGiel van Schijndel <me@mortis.eu>2012-07-17 01:50:35 +0200
commit96931d6f78ccc21ec38cd4655b1a250893a6f252 (patch)
treea7bd6c9bb2d0a9378b6db894b470126d0c2b4221 /src/net.cpp
parent1c009d622ded6dd254d6be5161b4df875d492d12 (diff)
downloadbitcoin-96931d6f78ccc21ec38cd4655b1a250893a6f252.tar.xz
Give threads a recognisable name to aid in debugging
NOTE: These thread names are visible in gdb when using 'info threads'. Additionally both 'top' and 'ps' show these names *unless* told to display the command-line instead of task name. Signed-off-by: Giel van Schijndel <me@mortis.eu>
Diffstat (limited to 'src/net.cpp')
-rw-r--r--src/net.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/net.cpp b/src/net.cpp
index fc7473003f..000a10d852 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -407,6 +407,9 @@ bool GetMyExternalIP(CNetAddr& ipRet)
void ThreadGetMyExternalIP(void* parg)
{
+ // Make this thread recognisable as the message handling thread
+ RenameThread("bitcoin-ext-ip");
+
CNetAddr addrLocalHost;
if (GetMyExternalIP(addrLocalHost))
{
@@ -636,6 +639,10 @@ void CNode::copyStats(CNodeStats &stats)
void ThreadSocketHandler(void* parg)
{
IMPLEMENT_RANDOMIZE_STACK(ThreadSocketHandler(parg));
+
+ // Make this thread recognisable as the networking thread
+ RenameThread("bitcoind [net]");
+
try
{
vnThreadsRunning[THREAD_SOCKETHANDLER]++;
@@ -988,6 +995,10 @@ void ThreadSocketHandler2(void* parg)
void ThreadMapPort(void* parg)
{
IMPLEMENT_RANDOMIZE_STACK(ThreadMapPort(parg));
+
+ // Make this thread recognisable as the UPnP thread
+ RenameThread("bitcoind [UPnP]");
+
try
{
vnThreadsRunning[THREAD_UPNP]++;
@@ -1146,6 +1157,10 @@ static const char *strDNSSeed[][2] = {
void ThreadDNSAddressSeed(void* parg)
{
IMPLEMENT_RANDOMIZE_STACK(ThreadDNSAddressSeed(parg));
+
+ // Make this thread recognisable as the DNS seeding thread
+ RenameThread("bitcoin-dnsseed");
+
try
{
vnThreadsRunning[THREAD_DNSSEED]++;
@@ -1315,6 +1330,10 @@ void ThreadDumpAddress2(void* parg)
void ThreadDumpAddress(void* parg)
{
IMPLEMENT_RANDOMIZE_STACK(ThreadDumpAddress(parg));
+
+ // Make this thread recognisable as the address dumping thread
+ RenameThread("bitcoin-adrdump");
+
try
{
ThreadDumpAddress2(parg);
@@ -1328,6 +1347,10 @@ void ThreadDumpAddress(void* parg)
void ThreadOpenConnections(void* parg)
{
IMPLEMENT_RANDOMIZE_STACK(ThreadOpenConnections(parg));
+
+ // Make this thread recognisable as the connection opening thread
+ RenameThread("bitcoin-opencon");
+
try
{
vnThreadsRunning[THREAD_OPENCONNECTIONS]++;
@@ -1481,6 +1504,10 @@ void ThreadOpenConnections2(void* parg)
void ThreadOpenAddedConnections(void* parg)
{
IMPLEMENT_RANDOMIZE_STACK(ThreadOpenAddedConnections(parg));
+
+ // Make this thread recognisable as the connection opening thread
+ RenameThread("bitcoin-opencon");
+
try
{
vnThreadsRunning[THREAD_ADDEDCONNECTIONS]++;
@@ -1610,6 +1637,10 @@ bool OpenNetworkConnection(const CAddress& addrConnect, CSemaphoreGrant *grantOu
void ThreadMessageHandler(void* parg)
{
IMPLEMENT_RANDOMIZE_STACK(ThreadMessageHandler(parg));
+
+ // Make this thread recognisable as the message handling thread
+ RenameThread("bitcoin-msghand");
+
try
{
vnThreadsRunning[THREAD_MESSAGEHANDLER]++;
@@ -1852,6 +1883,9 @@ void static Discover()
void StartNode(void* parg)
{
+ // Make this thread recognisable as the startup thread
+ RenameThread("bitcoin [start]");
+
if (semOutbound == NULL) {
// initialize semaphore
int nMaxOutbound = min(MAX_OUTBOUND_CONNECTIONS, (int)GetArg("-maxconnections", 125));