From: Greg Banks <gnb@sgi.com>
To: Neil Brown <neilb@suse.de>
Cc: Tom Talpey <Thomas.Talpey@netapp.com>,
Linux NFS Mailing List <nfs@lists.sourceforge.net>,
Peter Leckie <pleckie@melbourne.sgi.com>
Subject: Re: [RFC,PATCH 11/15] knfsd: RDMA transport core
Date: Mon, 21 May 2007 20:02:59 +1000 [thread overview]
Message-ID: <20070521100259.GN7482@sgi.com> (raw)
In-Reply-To: <18001.17958.145762.704892@notabene.brown>
On Mon, May 21, 2007 at 05:11:34PM +1000, Neil Brown wrote:
> On Friday May 18, tom@opengridcomputing.com wrote:
> >
> > This file implements the core transport data management and I/O
> > path. The I/O path for RDMA involves receiving callbacks on interrupt
> > context. Since all the svc transport locks are _bh locks we enqueue the
> > transport on a list, schedule a tasklet to dequeue data indications from
> > the RDMA completion queue. The tasklet in turn takes _bh locks to
> > enqueue receive data indications on a list for the transport. The
> > svc_rdma_recvfrom transport function dequeues data from this list in an
> > NFSD thread context.
>
> Cannot we simply change the usage of ->sp_lock to always disable
> interrupts?
We could, but the question then is what impact will locking out
interrupts more often have on throughout or latency over Ethernet?
> That would make this much simpler.
Yes it would.
> How much would it cost?
???
> Alternatively, why can the network layer deliver these notification in
> "bh" context, but the ib layer wants to deliver them in irq context?
> Does doing it in irq context have lower latency or something?
The problem is wider than it appears. The kernel verbs interface
reports a *lot* of stuff in irq context, not just incoming data.
Many of those events would be best handled by disconnecting the
svc_sock, which implies setting SK_CLOSE and causing svc_sock_enqueue()
to be called. The former happens; the latter doesn't. For example,
see qp_event_handler() in net/sunrpc/svc_rdma_transport.c. This
means that error conditions are not notified until some other event
causes svc_sock_enqueue() to be called.
Greg.
--
Greg Banks, R&D Software Engineer, SGI Australian Software Group.
Apparently, I'm Bedevere. Which MPHG character are you?
I don't speak for SGI.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
next prev parent reply other threads:[~2007-05-21 10:03 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-18 17:45 [RFC,PATCH 11/15] knfsd: RDMA transport core Tom Tucker
2007-05-18 19:07 ` Trond Myklebust
2007-05-18 20:07 ` Tom Tucker
2007-05-18 21:17 ` Trond Myklebust
2007-05-19 4:32 ` Tom Tucker
2007-05-21 7:16 ` Neil Brown
2007-05-21 16:02 ` Tom Tucker
2007-05-22 5:36 ` Neil Brown
2007-05-22 15:23 ` Tom Tucker
2007-05-18 19:24 ` J. Bruce Fields
2007-05-18 19:36 ` Tom Tucker
2007-05-18 19:42 ` J. Bruce Fields
2007-05-23 14:09 ` Greg Banks
2007-05-23 14:43 ` Tom Tucker
2007-05-23 14:55 ` Greg Banks
2007-05-23 15:03 ` Trond Myklebust
2007-05-23 15:12 ` Tom Tucker
2007-05-23 15:37 ` Trond Myklebust
2007-05-23 16:02 ` Tom Tucker
2007-05-23 16:35 ` Greg Banks
2007-05-23 16:29 ` Greg Banks
2007-05-23 18:07 ` Trond Myklebust
2007-05-23 18:19 ` Talpey, Thomas
2007-05-23 18:37 ` Trond Myklebust
2007-05-23 18:59 ` Talpey, Thomas
2007-05-23 20:01 ` Trond Myklebust
2007-05-23 21:00 ` Talpey, Thomas
2007-05-24 8:35 ` Greg Banks
2007-05-24 13:45 ` Talpey, Thomas
2007-05-23 15:03 ` Tom Tucker
2007-05-21 7:11 ` Neil Brown
2007-05-21 10:02 ` Greg Banks [this message]
2007-05-21 15:58 ` Tom Tucker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070521100259.GN7482@sgi.com \
--to=gnb@sgi.com \
--cc=Thomas.Talpey@netapp.com \
--cc=neilb@suse.de \
--cc=nfs@lists.sourceforge.net \
--cc=pleckie@melbourne.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.