diff options
author | Tejun Heo <tj@kernel.org> | 2010-07-20 16:09:02 -0400 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2010-07-22 16:59:15 -0400 |
commit | 9b646972467fb5fdc677f9e4251875db20bdbb64 (patch) | |
tree | 01d54cf7e0ee110bd8287c3360de0c3997e859ae /fs/cifs/cifsfs.c | |
parent | d098adfb7d281258173a43151483e52e21761021 (diff) |
cifs: use workqueue instead of slow-work
Workqueue can now handle high concurrency. Use system_nrt_wq
instead of slow-work.
* Updated is_valid_oplock_break() to not call cifs_oplock_break_put()
as advised by Steve French. It might cause deadlock. Instead,
reference is increased after queueing succeeded and
cifs_oplock_break() briefly grabs GlobalSMBSeslock before putting
the cfile to make sure it doesn't put before the matching get is
finished.
* Anton Blanchard reported that cifs conversion was using now gone
system_single_wq. Use system_nrt_wq which provides non-reentrance
guarantee which is enough and much better.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Steve French <sfrench@samba.org>
Cc: Anton Blanchard <anton@samba.org>
Diffstat (limited to 'fs/cifs/cifsfs.c')
-rw-r--r-- | fs/cifs/cifsfs.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c index 78c02eb4cb1f..4c075177c8b6 100644 --- a/fs/cifs/cifsfs.c +++ b/fs/cifs/cifsfs.c | |||
@@ -917,15 +917,10 @@ init_cifs(void) | |||
917 | if (rc) | 917 | if (rc) |
918 | goto out_unregister_key_type; | 918 | goto out_unregister_key_type; |
919 | #endif | 919 | #endif |
920 | rc = slow_work_register_user(THIS_MODULE); | ||
921 | if (rc) | ||
922 | goto out_unregister_resolver_key; | ||
923 | 920 | ||
924 | return 0; | 921 | return 0; |
925 | 922 | ||
926 | out_unregister_resolver_key: | ||
927 | #ifdef CONFIG_CIFS_DFS_UPCALL | 923 | #ifdef CONFIG_CIFS_DFS_UPCALL |
928 | unregister_key_type(&key_type_dns_resolver); | ||
929 | out_unregister_key_type: | 924 | out_unregister_key_type: |
930 | #endif | 925 | #endif |
931 | #ifdef CONFIG_CIFS_UPCALL | 926 | #ifdef CONFIG_CIFS_UPCALL |