Re: [PATCH 2/3] NFS: Ensure that we free the rpc_task after read and write cleanups are done

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2013-01-04 at 13:29 -0500, Bruce Fields wrote:
+AD4- On Fri, Jan 04, 2013 at 01:15:01PM -0500, Trond Myklebust wrote:
+AD4- +AD4- This patch ensures that we free the rpc+AF8-task after the cleanup callbacks
+AD4- +AD4- are done in order to avoid a deadlock problem that can be triggered if
+AD4- +AD4- the callback needs to wait for another workqueue item to complete.
+AD4- 
+AD4- Makes sense to me+ACE-
+AD4- 
+AD4- (Dumb question: so read and write data are the only two cases where the
+AD4- calldata embeds an rpc task?  Why is that?)

nfs+AF8-commit+AF8-data and nfs+AF8-layoutcommit+AF8-data do too. The idea is to improve
reliability when writing back dirty data in low memory conditions. The
struct nfs+AF8-write+AF8-data and nfs+AF8-commit+AF8-data have their own mempool in
order to guarantee a minimum number of available slots. By embedding the
rpc+AF8-task, we can extend that guarantee to cover (part of) the RPC call
too.

The only reason why nfs+AF8-read+AF8-data has the same embedding is for symmetry
with nfs+AF8-write+AF8-data.

-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust+AEA-netapp.com
www.netapp.com
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux