Skip to content
Snippets Groups Projects
Commit 52e30a99 authored by Chris Broekema's avatar Chris Broekema
Browse files

BugID: 1011

Don't allow the kernel buffers to be set on BlueGene (since it doesn't implement setsockopt())
parent 57a7a95e
No related branches found
No related tags found
No related merge requests found
...@@ -350,7 +350,7 @@ bool TH_Socket::initBuffers(int recvBufferSize, int sendBufferSize) { ...@@ -350,7 +350,7 @@ bool TH_Socket::initBuffers(int recvBufferSize, int sendBufferSize) {
else socketFD = itsDataSocket->getSid(); else socketFD = itsDataSocket->getSid();
if (recvBufferSize != -1) { if (recvBufferSize != -1) {
#ifdef __linux__ #if defined __linux__ && !defined HAVE_BGL
int name[] = { CTL_NET, NET_CORE, NET_CORE_RMEM_MAX }; int name[] = { CTL_NET, NET_CORE, NET_CORE_RMEM_MAX };
int value; int value;
size_t valueSize = sizeof(value); size_t valueSize = sizeof(value);
...@@ -362,15 +362,16 @@ bool TH_Socket::initBuffers(int recvBufferSize, int sendBufferSize) { ...@@ -362,15 +362,16 @@ bool TH_Socket::initBuffers(int recvBufferSize, int sendBufferSize) {
LOG_WARN("TH_Socket: could not increase max socket receive buffer"); LOG_WARN("TH_Socket: could not increase max socket receive buffer");
} }
} }
#endif
// now set the buffer for our socket // now set the buffer for our socket
if (setsockopt(socketFD, SOL_SOCKET, SO_RCVBUF, &recvBufferSize, sizeof(recvBufferSize)) < 0) if (setsockopt(socketFD, SOL_SOCKET, SO_RCVBUF, &recvBufferSize, sizeof(recvBufferSize)) < 0)
{ {
LOG_WARN("TH_Socket: receive buffer size could not be set, default size will be used."); LOG_WARN("TH_Socket: receive buffer size could not be set, default size will be used.");
} }
#endif
} }
if (sendBufferSize != -1) { if (sendBufferSize != -1) {
#ifdef __linux__ #if defined __linux__ && !defined HAVE_BGL
int name[] = { CTL_NET, NET_CORE, NET_CORE_WMEM_MAX }; int name[] = { CTL_NET, NET_CORE, NET_CORE_WMEM_MAX };
int value; int value;
size_t valueSize = sizeof(value); size_t valueSize = sizeof(value);
...@@ -382,11 +383,12 @@ bool TH_Socket::initBuffers(int recvBufferSize, int sendBufferSize) { ...@@ -382,11 +383,12 @@ bool TH_Socket::initBuffers(int recvBufferSize, int sendBufferSize) {
LOG_WARN("TH_Socket: could not increase max socket send buffer"); LOG_WARN("TH_Socket: could not increase max socket send buffer");
} }
} }
#endif if (setsockopt(socketFD, SOL_SOCKET, SO_SNDBUF, &sendBufferSize, sizeof(sendBufferSize)) < 0)
if (setsockopt(socketFD, SOL_SOCKET, SO_RCVBUF, &sendBufferSize, sizeof(sendBufferSize)) < 0)
{ {
LOG_WARN("TH_Socket: send buffer size could not be set, default size will be used."); LOG_WARN("TH_Socket: send buffer size could not be set, default size will be used.");
} }
#endif
} }
return true; return true;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment