- 05 Dec, 2009 2 commits
-
-
Alexandros Batsakis authored
in NFSv4.1 the seqid part of a stateid in CB_RECALL must be 0 Signed-off-by:
Alexandros Batsakis <batsakis@netapp.com> Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
Alexandros Batsakis authored
For now the clients returns _all_ the delegations of the specificed type it holds Signed-off-by:
Alexandros Batsakis <batsakis@netapp.com> Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
- 17 Jun, 2009 10 commits
-
-
Ricardo Labiaga authored
Change the type of cs_addr and csr_status to 'struct sockaddr' and '__be32' since the cb_sequence processing function will use existing functionality that expects these types. Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Benny Halevy authored
Currently, just free up any referring calls information. Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [nfs41: fix csr_{,target}highestslotid] Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Benny Halevy authored
Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Benny Halevy authored
Note that this patch changes the nfsv4.0 behavior also when CONFIG_NFS_V4_1 is not defined where NFS4ERR_MINOR_VERS_MISMATCH will be returned if the client received a CB_COMPOUND with minorversion != 0. Previously, it would have returned NFS4ERR_OP_ILLEGAL for CB_SEQUENCE. (or if the server is broken and sent OP_CB_GETATTR or OP_CB_RECALL with minorversion!=0, they would have been processed normally. Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [nfs41: refactor op preprocessing out of process_op] See http://linux-nfs.org/pipermail/pnfs/2009-June/007845.html [nfs41: define CB_NOTIFY_DEVICEID as not supported] Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Benny Halevy authored
Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Benny Halevy authored
decode cb_compound header conforming to http://tools.ietf.org/html/draft-ietf-nfsv4-minorversion1-26 Get rid of cb_compound_hdr_arg.callback_ident callback_ident is not used anywhere so we shouldn't waste any memory to store it. Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [nfs41: no need to break read_buf in decode_compound_hdr_arg] See http://linux-nfs.org/pipermail/pnfs/2009-June/007844.html Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Benny Halevy authored
Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Andy Adamson authored
Tracks the nfs_callback_info for both versions, enabling the callback service for v4 and v4.1 to run concurrently and be stopped independently of each other. Signed-off-by:
Ricardo Labiaga <ricardo.labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Ricardo Labiaga authored
nfs41_callback_up() initializes the necessary queues and creates the new nfs41_callback_svc thread. This thread executes the callback service which waits for requests to arrive on the svc_serv->sv_cb_list. NFS41_BC_MIN_CALLBACKS is set to 1 because we expect callbacks to not cause substantial latency. The actual processing of the callback will be implemented as a separate patch. There is only one NFSv4.1 callback service. The first caller of nfs4_callback_up() creates the service, subsequent callers increment a reference count on the service. The service is destroyed when the last caller invokes nfs_callback_down(). The transport needs to hold a reference to the callback service in order to invoke it during callback processing. Currently this reference is only obtained when the service is first created. This is incorrect, since subsequent registrations for other transports will leave the xprt->serv pointer uninitialized, leading to an oops when a callback arrives on the "unreferenced" transport. This patch fixes the problem by ensuring that a reference to the service is saved in xprt->serv, either because the service is created by this invocation to nfs4_callback_up() or by a prior invocation. Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [nfs41: Add a reference to svc_serv during callback service bring up] Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [Type check arguments of nfs_callback_up] Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [nfs41: save svc_serv in nfs_callback_info] Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [Removal of ugly #ifdefs] [nfs41: Update to removal of ugly #ifdefs] Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
Benny Halevy authored
move nfs4_init_callback into nfs4_init_client_minor_version and nfs4_destroy_callback into nfs4_clear_client_minor_version as these need to happen also when auto-negotiating the minorversion once the callback service for nfs41 becomes different than for nfs4.0 Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [nfs41: Fix checkpatch warning] Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [Type check arguments of nfs_callback_up] Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com> [nfs41: Backchannel: Remove FIXME comment] Signed-off-by:
Ricardo Labiaga <Ricardo.Labiaga@netapp.com> Signed-off-by:
Benny Halevy <bhalevy@panasas.com>
-
- 28 Mar, 2009 1 commit
-
-
Chuck Lever authored
Apparently a lot of people need to disable IPv6 completely on their distributor-built systems, which have CONFIG_IPV6_MODULE enabled at build time. They do this by blacklisting the ipv6.ko module. This causes the creation of the NFSv4 callback service listener to fail if CONFIG_IPV6_MODULE is set, but the module cannot be loaded. Now that the kernel's PF_INET6 RPC listeners are completely separate from PF_INET listeners, we can always start PF_INET. Then the NFS client can try to start a PF_INET6 listener, but it isn't required to be available. Signed-off-by:
Chuck Lever <chuck.lever@oracle.com> Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
- 30 Jan, 2008 2 commits
-
-
Chuck Lever authored
Change the addr field in the cb_recallargs struct to a "struct sockaddr *" to support non-IPv4 addresses. Signed-off-by:
Chuck Lever <chuck.lever@oracle.com> Cc: Aurelien Charbon <aurelien.charbon@ext.bull.net> Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
Chuck Lever authored
Change the addr field in the cb_getattrargs struct to a "struct sockaddr *" to support non-IPv4 addresses. Signed-off-by:
Chuck Lever <chuck.lever@oracle.com> Cc: Aurelien Charbon <aurelien.charbon@ext.bull.net> Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
- 14 May, 2007 1 commit
-
-
Trond Myklebust authored
- fs/nfs/nfs4xdr.c:2499:42: warning: incorrect type in argument 2 (different signedness) - fs/nfs/nfs4xdr.c:2658:49: warning: incorrect type in argument 4 (different explicit signedness) - fs/nfs/nfs4xdr.c:2683:50: warning: incorrect type in argument 4 (different explicit signedness) - fs/nfs/nfs4xdr.c:3063:68: warning: incorrect type in argument 4 (different explicit signedness) - fs/nfs/nfs4xdr.c:3065:68: warning: incorrect type in argument 4 (different explicit signedness) - fs/nfs/callback_xdr.c:138:31: warning: incorrect type in argument 2 (different signedness) Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
- 20 Oct, 2006 2 commits
-
-
Al Viro authored
on-the-wire data is big-endian [mostly pulled from Alexey's patch] Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk> Acked-by:
Trond Myklebust <trond.myklebust@fys.uio.no> Acked-by:
Neil Brown <neilb@suse.de> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Al Viro authored
[pulled from Alexey's patch] Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk> Acked-by:
Trond Myklebust <trond.myklebust@fys.uio.no> Acked-by:
Neil Brown <neilb@suse.de> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 23 Sep, 2006 1 commit
-
-
David Howells authored
Make the nfs_callback_up()/down() prototypes just do nothing if NFS4 is not enabled. Also make the down function void type since we can't really do anything if it fails. Signed-Off-By:
David Howells <dhowells@redhat.com> Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
- 06 Jan, 2006 1 commit
-
-
Trond Myklebust authored
Signed-off-by:
Trond Myklebust <Trond.Myklebust@netapp.com>
-
- 16 Apr, 2005 1 commit
-
-
Linus Torvalds authored
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
-