diff options
Diffstat (limited to 'xlators/protocol/server/src/server.c')
-rw-r--r-- | xlators/protocol/server/src/server.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/xlators/protocol/server/src/server.c b/xlators/protocol/server/src/server.c index 7bd276cdece..30546e87b8d 100644 --- a/xlators/protocol/server/src/server.c +++ b/xlators/protocol/server/src/server.c @@ -843,6 +843,12 @@ do_rpc: if (ret) goto out; + /* rpcsvc thread reconfigure should be after events thread + * reconfigure + */ + new_nthread = + ((struct event_pool *)(this->ctx->event_pool))->eventthreadcount; + ret = rpcsvc_ownthread_reconf (rpc_conf, new_nthread); out: THIS = oldTHIS; gf_msg_debug ("", 0, "returning %d", ret); @@ -1499,9 +1505,9 @@ server_notify (xlator_t *this, int32_t event, void *data, ...) (*trav_p) = (*trav_p)->next; glusterfs_mgmt_pmap_signout (ctx, victim->name); - glusterfs_autoscale_threads (THIS->ctx, -1); + /* we need the protocol/server xlator here as 'this' */ + glusterfs_autoscale_threads (ctx, -1, this); default_notify (victim, GF_EVENT_CLEANUP, data); - } break; |