diff options
| -rw-r--r-- | xlators/protocol/server/src/server.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/xlators/protocol/server/src/server.c b/xlators/protocol/server/src/server.c index eed1d254a1d..dbafd8367c0 100644 --- a/xlators/protocol/server/src/server.c +++ b/xlators/protocol/server/src/server.c @@ -1154,7 +1154,9 @@ server_process_event_upcall (xlator_t *this, void *data)                  list_for_each_entry (xprt, &conf->xprt_list, list) {                          client = xprt->xl_private; -                        if (strcmp(client->client_uid, client_uid)) +                        /* 'client' is not atomically added during xprt entry +                         * addition to the list. */ +                        if (!client || strcmp(client->client_uid, client_uid))                                  continue;                          rpcsvc_request_submit(conf->rpc, xprt,  | 
