If there's a system error (eg. oversize packet reveived) just give up since redoing the call would likely end up with the same error. Signed-off-by: Ian Kent <raven@xxxxxxxxxx> --- lib/rpc_subs.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/rpc_subs.c b/lib/rpc_subs.c index 7b8162b4..ee7f94b9 100644 --- a/lib/rpc_subs.c +++ b/lib/rpc_subs.c @@ -1195,6 +1195,8 @@ static int rpc_get_exports_proto(struct conn_info *info, struct exportinfo **exp info->timeout); if (status == RPC_SUCCESS) break; + if (status == RPC_SYSTEMERROR) + break; if (++vers_entry > 2) break; CLNT_CONTROL(client, CLSET_VERS,