]> err.no Git - linux-2.6/commit
rdma: SVCRDMA Core Transport Services
authorTom Tucker <tom@opengridcomputing.com>
Wed, 12 Dec 2007 22:13:21 +0000 (16:13 -0600)
committerJ. Bruce Fields <bfields@citi.umich.edu>
Fri, 1 Feb 2008 21:42:14 +0000 (16:42 -0500)
commit377f9b2f4529e0ac702fd7b91e216afd0adc959e
treeb81b97c041dcc3f3030c4df350ecf734ea8186d4
parentef7fbf59e6f780a0fa03536839e3c42e9ce40ad1
rdma: SVCRDMA Core Transport Services

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.

Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
Acked-by: Neil Brown <neilb@suse.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
net/sunrpc/xprtrdma/svc_rdma_transport.c [new file with mode: 0644]