lkml.org 
[lkml]   [1998]   [Sep]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: knfsd-980910 is released with nfsd-patch-2.1.121 (fwd)
H.J. and Allen:

While you are at it, here's a fix for a long-time annoyance. I have an
eclectic collection of older boxes, including a DEC VAXStation 3100 which
must NFS boot from a Linux server. This is the machine which requires an
exported file for swap - my motivation for bringing it up on the list to
begin with.

The VAX would never boot from a 2.1.x system, so I traditionally brought
up 2.0.3x when I needed to run it. Since your patch theoretically made
the swap available, I spent some time digging into the boot failures.

Turns out that kmountd tells the portmapper it's able to provide NFS v3
services. This is all fine and well, but the client (naturally) assumes
that the nfsd can do the same - which it cannot. This quick patch
corrects the problem (although a reboot is required to clear V3 from the
rpcinfo list - why?) and permits my elderly Vaxen to run :-). Now, if I
could just convince 'mopd' to respond to boot requests without having to
turn on promiscuous mode on the network adapter... But that's another
subject.

I'd argue that we should not be advertising NFS3 services for any of the
RPC daemons until such time as the NFS server actually speaks it.

Opinions?

Steve


*** mountd.c.orig Thu Sep 10 13:19:28 1998
--- mountd.c Sat Sep 12 14:01:19 1998
***************
*** 18,23 ****
--- 18,28 ----
#include "rpcmisc.h"
#include "version.h"

+ /* There's no point in having mountd advertise V3 services when the
+ * server itself doesn't handle it. Some clients have a very hard
+ * hard time with this discrepancy.
+ */
+ #undef NFS3

static void usage(int exitcode);
static exports get_exportlist(void);
***************
*** 41,47 ****
--- 46,54 ----
{
pmap_unset (MOUNTPROG, MOUNTVERS);
pmap_unset (MOUNTPROG, MOUNTVERS_POSIX);
+ #ifdef NFS3
pmap_unset (MOUNTPROG, MOUNTVERS_NFSV3);
+ #endif
xlog (L_FATAL, "Caught signal %d, un-registering and exiting.", sig);
}

***************
*** 323,330 ****

rpc_init("mountd", MOUNTPROG, MOUNTVERS, mount_dispatch, 0, 0);
rpc_init("mountd", MOUNTPROG, MOUNTVERS_POSIX, mount_dispatch, 0, 0);
rpc_init("mountd", MOUNTPROG, MOUNTVERS_NFSV3, mount_dispatch, 0, 0);
!
sa.sa_handler = killer;
sigaction(SIGHUP, &sa, NULL);
sigaction(SIGINT, &sa, NULL);
--- 342,350 ----

rpc_init("mountd", MOUNTPROG, MOUNTVERS, mount_dispatch, 0, 0);
rpc_init("mountd", MOUNTPROG, MOUNTVERS_POSIX, mount_dispatch, 0, 0);
+ #ifdef NFS3
rpc_init("mountd", MOUNTPROG, MOUNTVERS_NFSV3, mount_dispatch, 0, 0);
! #endif
sa.sa_handler = killer;
sigaction(SIGHUP, &sa, NULL);
sigaction(SIGINT, &sa, NULL);







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

\
 
 \ /
  Last update: 2005-03-22 13:44    [W:0.035 / U:0.152 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site