2008-08-07 21:06:31

by Chuck Lever III

[permalink] [raw]
Subject: nfs_utils: O_NONBLOCK sockets in support/nfs/svc_socket.c

Hi guys-

I'm looking at svc_socket() and friends to add IPv6 support. Got a
question.

I see in commits 11d34d11 and 58e58ffb there was a set of fcntl()
calls added to make RPC service listener sockets non-blocking.

How come this support wasn't added in support/nfs/rpcmisc.c:makesock()
as well?

I'm probably misreading the logic in rpc_init(), but it seems to me
there are possibilities for the listener socket to be created by
makesock() and not by svc_socket(), and then that listener would not
be O_NONBLOCK. For instance, if there was a port value specified on
the mountd command line...?

Please straighten me out. Thanks.

--
Chuck Lever
chuck[dot]lever[at]oracle[dot]com