#
a974deee |
| 08-Feb-2017 |
Trond Myklebust <trond.myklebust@primarydata.com> |
NFSv4: Fix memory and state leak in _nfs4_open_and_get_state
If we exit because the file access check failed, we currently leak the struct nfs4_state. We need to attach it to the open context before
NFSv4: Fix memory and state leak in _nfs4_open_and_get_state
If we exit because the file access check failed, we currently leak the struct nfs4_state. We need to attach it to the open context before returning.
Fixes: 3efb9722475e ("NFSv4: Refactor _nfs4_open_and_get_state..") Cc: stable@vger.kernel.org # 3.10+ Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
045c5519 |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Return the comparison result directly in nfs41_match_stateid()
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
49ad0145 |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Clean up nfs41_same_server_scope()
The function is cleaner this way, since we can use the result of memcmp() directly
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
81b68de4 |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: No need to set and return status in nfs41_lock_expired()
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
9df1336c |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Remove unnecessary goto in nfs4_lookup_root_sec()
Once again, it's easier and cleaner just to return the error directly.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
334f87dd |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Remove nfs4_recover_expired_lease()
This function doesn't add much, since all it does is access the server's nfs_client variable.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
d7e98258 |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Remove an extra if in _nfs4_recover_proc_open()
It's simpler just to return the status unconditionally
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
37a8484a |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Return errors directly in _nfs4_opendata_reclaim_to_nfs4_state()
There is no need for a goto just to return an error code without any cleanup. Returning the error directly helps to clean up th
NFS: Return errors directly in _nfs4_opendata_reclaim_to_nfs4_state()
There is no need for a goto just to return an error code without any cleanup. Returning the error directly helps to clean up the code.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
820bf85c |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Remove nfs4_wait_for_completion_rpc_task()
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
eeea5361 |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Clean up _nfs4_is_integrity_protected()
We can cut out the if statement and return the results of the comparison directly.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
d9b67e1e |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Fix inconsistent indentation in nfs4proc.c
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
ad05cc0f |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Make trace_nfs4_setup_sequence() available to NFS v4.0
This tracepoint displays information about the slot that was chosen for the RPC, in addition to session information. This could be useful
NFS: Make trace_nfs4_setup_sequence() available to NFS v4.0
This tracepoint displays information about the slot that was chosen for the RPC, in addition to session information. This could be useful information for debugging, and we can set the session id hash to 0 to indicate that there is no session.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
3d35808b |
| 11-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Merge the remaining setup_sequence functions
This creates a single place for all the work to happen, using the presence of a session to determine if extra values need to be set.
Signed-off-by:
NFS: Merge the remaining setup_sequence functions
This creates a single place for all the work to happen, using the presence of a session to determine if extra values need to be set.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
76ee0354 |
| 10-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Check if the slot table is draining from nfs4_setup_sequence()
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
0dcee8bb |
| 10-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Handle setup sequence task rescheduling in a single place
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
6994cdd7 |
| 10-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Lock the slot table from a single place during setup sequence
Rather than implementing this twice for NFS v4.0 and v4.1
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
|
#
9dd9107f |
| 10-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Move slot-already-allocated check into nfs_setup_sequence()
This puts the check in a single place, rather than needing to implement it twice for v4.0 and v4.1.
Signed-off-by: Anna Schumaker <A
NFS: Move slot-already-allocated check into nfs_setup_sequence()
This puts the check in a single place, rather than needing to implement it twice for v4.0 and v4.1.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
7981c8a6 |
| 10-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Create a single nfs4_setup_sequence() function
The inline ifdef lets us put everything in a single place, rather than having two (very similar) versions of this function.
Signed-off-by: Anna S
NFS: Create a single nfs4_setup_sequence() function
The inline ifdef lets us put everything in a single place, rather than having two (very similar) versions of this function.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
6de7e12f |
| 09-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Use nfs4_setup_sequence() everywhere
This does the right thing depending on if we have a session, rather than needing to handle this manually in multiple places.
Signed-off-by: Anna Schumaker
NFS: Use nfs4_setup_sequence() everywhere
This does the right thing depending on if we have a session, rather than needing to handle this manually in multiple places.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
42e1cca7 |
| 09-Jan-2017 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Change nfs4_setup_sequence() to take an nfs_client structure
I want to have all callers use this function, rather than calling the NFS v4.0 and v4.1 versions directly. This includes pNFS, whic
NFS: Change nfs4_setup_sequence() to take an nfs_client structure
I want to have all callers use this function, rather than calling the NFS v4.0 and v4.1 versions directly. This includes pNFS, which only has access to the nfs_client structure in some places.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
172d9de1 |
| 14-May-2015 |
Anna Schumaker <Anna.Schumaker@Netapp.com> |
NFS: Change nfs4_get_session() to take an nfs_client structure
pNFS only has access to the nfs_client structure, and not the nfs_server, so we need to make this change so the function can be used by
NFS: Change nfs4_get_session() to take an nfs_client structure
pNFS only has access to the nfs_client structure, and not the nfs_server, so we need to make this change so the function can be used by pNFS as well.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
show more ...
|
#
a430607b |
| 24-Jan-2017 |
Benjamin Coddington <bcodding@redhat.com> |
NFSv4.0: always send mode in SETATTR after EXCLUSIVE4
Some nfsv4.0 servers may return a mode for the verifier following an open with EXCLUSIVE4 createmode, but this does not mean the client should s
NFSv4.0: always send mode in SETATTR after EXCLUSIVE4
Some nfsv4.0 servers may return a mode for the verifier following an open with EXCLUSIVE4 createmode, but this does not mean the client should skip setting the mode in the following SETATTR. It should only do that for EXCLUSIVE4_1 or UNGAURDED createmode.
Fixes: 5334c5bdac92 ("NFS: Send attributes in OPEN request for NFS4_CREATE_EXCLUSIVE4_1") Signed-off-by: Benjamin Coddington <bcodding@redhat.com> Cc: stable@vger.kernel.org # v4.3+ Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
show more ...
|
#
8ac09251 |
| 23-Jan-2017 |
Trond Myklebust <trond.myklebust@primarydata.com> |
NFSv4.1: Fix a deadlock in layoutget
We cannot call nfs4_handle_exception() without first ensuring that the slot has been freed. If not, we end up deadlocking with the process waiting for recovery t
NFSv4.1: Fix a deadlock in layoutget
We cannot call nfs4_handle_exception() without first ensuring that the slot has been freed. If not, we end up deadlocking with the process waiting for recovery to complete, and recovery waiting for the slot table to drain.
Fixes: 2e80dbe7ac51 ("NFSv4.1: Close callback races for OPEN, LAYOUTGET...") Cc: stable@vger.kernel.org # v4.8+ Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
show more ...
|
#
d3129ef6 |
| 11-Jan-2017 |
Trond Myklebust <trond.myklebust@primarydata.com> |
NFSv4: update_changeattr should update the attribute timestamp
Otherwise, the attribute cache remains marked as being expired.
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
|
#
c40d52fe |
| 11-Jan-2017 |
Trond Myklebust <trond.myklebust@primarydata.com> |
NFSv4: Don't call update_changeattr() unless the unlink is successful
If the unlink wasn't successful, then the directory has presumably not changed.
Signed-off-by: Trond Myklebust <trond.myklebust
NFSv4: Don't call update_changeattr() unless the unlink is successful
If the unlink wasn't successful, then the directory has presumably not changed.
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
show more ...
|