From 7c964a259f62eca8044016477ebb8b11d84108b3 Mon Sep 17 00:00:00 2001 From: Andrew Deason Date: Fri, 4 May 2012 17:23:42 -0500 Subject: [PATCH] Call rx_SetNoJumbo earlier For ubik server processes, rx_SetNoJumbo needs to be called before ubik initialization for it to effect the communication between dbservers; otherwise, full database transfers may result in Rx jumbograms on the wire regardless of the jumbo/nojumbo setting. Move the call to rx_SetNoJumbo to before ubik initialization to avoid this. Also move the call to rx_SetNoJumbo to immediately after rx_Init* for all server processes, for consistency. Move similar calls to rx_SetMaxMTU for the same reason. Reviewed-on: http://gerrit.openafs.org/7350 Tested-by: BuildBot Reviewed-by: Simon Wilkinson Reviewed-by: Derrick Brashear (cherry picked from commit 0debf2d2274db1ea862bfdc2ef767372f1fa77e3) Change-Id: Iacb1afa853281e856bbb70f39c6ac9a81f210d0d Reviewed-on: http://gerrit.openafs.org/9121 Reviewed-by: Andrew Deason Reviewed-by: Stephan Wiesand Reviewed-by: Simon Wilkinson Tested-by: BuildBot --- src/bozo/bosserver.c | 14 +++++++------- src/budb/server.c | 6 +++--- src/kauth/kaserver.c | 6 +++--- src/ptserver/ptserver.c | 14 +++++++------- src/vlserver/vlserver.c | 13 +++++++------ 5 files changed, 27 insertions(+), 26 deletions(-) diff --git a/src/bozo/bosserver.c b/src/bozo/bosserver.c index 533c50fa4..de3e49155 100644 --- a/src/bozo/bosserver.c +++ b/src/bozo/bosserver.c @@ -1111,6 +1111,13 @@ main(int argc, char **argv, char **envp) exit(code); } + /* Disable jumbograms */ + rx_SetNoJumbo(); + + if (rxMaxMTU != -1) { + rx_SetMaxMTU(rxMaxMTU); + } + code = LWP_CreateProcess(BozoDaemon, BOZO_LWP_STACKSIZE, /* priority */ 1, /* param */ NULL , "bozo-the-clown", &bozo_pid); @@ -1173,13 +1180,6 @@ main(int argc, char **argv, char **envp) bozo_CreatePidFile("bosserver", NULL, getpid()); } - /* Disable jumbograms */ - rx_SetNoJumbo(); - - if (rxMaxMTU != -1) { - rx_SetMaxMTU(rxMaxMTU); - } - tservice = rx_NewServiceHost(host, 0, /* service id */ 1, "bozo", securityClasses, numClasses, BOZO_ExecuteRequest); diff --git a/src/budb/server.c b/src/budb/server.c index 9fd3bc2cb..94a37ac4b 100644 --- a/src/budb/server.c +++ b/src/budb/server.c @@ -552,6 +552,9 @@ main(int argc, char **argv) } } + /* Disable jumbograms */ + rx_SetNoJumbo(); + code = ubik_ServerInitByInfo (globalConfPtr->myHost, htons(AFSCONF_BUDBPORT), &cellinfo, @@ -568,9 +571,6 @@ main(int argc, char **argv) afsconf_BuildServerSecurityObjects(BU_conf, 0, &securityClasses, &numClasses); - /* Disable jumbograms */ - rx_SetNoJumbo(); - tservice = rx_NewServiceHost(host, 0, BUDB_SERVICE, "BackupDatabase", securityClasses, numClasses, BUDB_ExecuteRequest); diff --git a/src/kauth/kaserver.c b/src/kauth/kaserver.c index 074656527..51d59201e 100644 --- a/src/kauth/kaserver.c +++ b/src/kauth/kaserver.c @@ -391,6 +391,9 @@ main(int argc, char *argv[]) } } + /* Disable jumbograms */ + rx_SetNoJumbo(); + if (servers) code = ubik_ServerInit(myHost, htons(AFSCONF_KAUTHPORT), serverList, @@ -407,9 +410,6 @@ main(int argc, char *argv[]) sca[RX_SCINDEX_NULL] = rxnull_NewServerSecurityObject(); - /* Disable jumbograms */ - rx_SetNoJumbo(); - tservice = rx_NewServiceHost(host, 0, KA_AUTHENTICATION_SERVICE, "AuthenticationService", sca, 1, KAA_ExecuteRequest); diff --git a/src/ptserver/ptserver.c b/src/ptserver/ptserver.c index 53925ae06..13786c02a 100644 --- a/src/ptserver/ptserver.c +++ b/src/ptserver/ptserver.c @@ -506,6 +506,13 @@ main(int argc, char **argv) } } + /* Disable jumbograms */ + rx_SetNoJumbo(); + + if (rxMaxMTU != -1) { + rx_SetMaxMTU(rxMaxMTU); + } + code = ubik_ServerInitByInfo(myHost, htons(AFSCONF_PROTPORT), &info, clones, pr_dbaseName, &dbase); @@ -520,13 +527,6 @@ main(int argc, char **argv) afsconf_BuildServerSecurityObjects(prdir, 0, &securityClasses, &numClasses); - /* Disable jumbograms */ - rx_SetNoJumbo(); - - if (rxMaxMTU != -1) { - rx_SetMaxMTU(rxMaxMTU); - } - tservice = rx_NewServiceHost(host, 0, PRSRV, "Protection Server", securityClasses, numClasses, PR_ExecuteRequest); diff --git a/src/vlserver/vlserver.c b/src/vlserver/vlserver.c index 1eeae562c..5deab4980 100644 --- a/src/vlserver/vlserver.c +++ b/src/vlserver/vlserver.c @@ -342,6 +342,13 @@ main(int argc, char **argv) } } + if (!rxJumbograms) { + rx_SetNoJumbo(); + } + if (rxMaxMTU != -1) { + rx_SetMaxMTU(rxMaxMTU); + } + ubik_nBuffers = 512; ubik_CRXSecurityProc = afsconf_ClientAuth; ubik_CRXSecurityRock = (char *)tdir; @@ -356,12 +363,6 @@ main(int argc, char **argv) printf("vlserver: Ubik init failed: %s\n", afs_error_message(code)); exit(2); } - if (!rxJumbograms) { - rx_SetNoJumbo(); - } - if (rxMaxMTU != -1) { - rx_SetMaxMTU(rxMaxMTU); - } rx_SetRxDeadTime(50); memset(HostAddress, 0, sizeof(HostAddress)); -- 2.39.5