Re: linux-2.4.20-pre8-ac3: NFS performance regression

From: Trond Myklebust (trond.myklebust@fys.uio.no)
Date: Thu Oct 03 2002 - 17:50:04 EST


>>>>> " " == Alan Cox <alan@lxorguk.ukuu.org.uk> writes:

> On Thu, 2002-10-03 at 19:32, Andreas Pfaller wrote:
>> However I noticed a significant NFS performance drop with
>> 2.4.20-pre8-ac3. Other network throughput is not affected.

> I see this with all recent 2.4.20pre and 2.4.20pre-ac
> kernels. I've not had time to retest with Trond's fixes to
> recheck it all

FYI, here is the 'fix' Alan is talking about. It could be worth
trying...

Cheers,
  Trond

--- linux/net/sunrpc/xprt.c.orig Fri Aug 30 20:16:17 2002
+++ linux/net/sunrpc/xprt.c Tue Sep 24 00:08:59 2002
@@ -171,10 +171,10 @@
 
         if (xprt->snd_task)
                 return;
- if (!xprt->nocong && RPCXPRT_CONGESTED(xprt))
- return;
         task = rpc_wake_up_next(&xprt->resend);
         if (!task) {
+ if (!xprt->nocong && RPCXPRT_CONGESTED(xprt))
+ return;
                 task = rpc_wake_up_next(&xprt->sending);
                 if (!task)
                         return;
@@ -1013,7 +1013,6 @@
                 }
                 rpc_inc_timeo(&task->tk_client->cl_rtt);
                 xprt_adjust_cwnd(req->rq_xprt, -ETIMEDOUT);
- __xprt_put_cong(xprt, req);
         }
         req->rq_nresend++;
 
@@ -1150,10 +1149,7 @@
                 req->rq_bytes_sent = 0;
         }
  out_release:
- spin_lock_bh(&xprt->sock_lock);
- __xprt_release_write(xprt, task);
- __xprt_put_cong(xprt, req);
- spin_unlock_bh(&xprt->sock_lock);
+ xprt_release_write(xprt, task);
         return;
  out_receive:
         dprintk("RPC: %4d xmit complete\n", task->tk_pid);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Oct 07 2002 - 22:00:42 EST