2007-12-20 20:04:00

by Chuck Lever III

[permalink] [raw]
Subject: [PATCH 0/4] Don't touch rpc_xprt directly in lockd

Hi Trond-

Here's a set of patches that remove lockd's dependence on the rpc_xprt.prot
field in nlmclnt_proc().

There are a few reasons to remove this dependence, including:

1. The NFS client is now fully in control of selecting which transport
protocol is chosen for the sideband NLM protocol (use UDP only if NFS
over UDP is specified; otherwise TCP is used).

2. Looking at fields in the rpc_xprt structure in an upper-level protocol
implementation is a layering violation.

3. The rpc_xprt.prot field is overloaded -- it's used to control RPC binding
as well as which transport protocol is used for sideband protocols.

4. Removing the nlmclnt_lookup_host() call from nlmclnt_proc() eliminates
work that is unnecessarily repeated for each NLM request.

This patch series should replace the four I sent you last week for review.
Please consider them for 2.6.25.

corporate: <chuck dot lever at oracle dot com>