diff options
Diffstat (limited to 'fs/cifs')
-rw-r--r-- | fs/cifs/cifsfs.c | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c index 34f5701d9555..0d6d8b573652 100644 --- a/fs/cifs/cifsfs.c +++ b/fs/cifs/cifsfs.c | |||
@@ -66,9 +66,6 @@ unsigned int sign_CIFS_PDUs = 1; | |||
66 | extern struct task_struct *oplockThread; /* remove sparse warning */ | 66 | extern struct task_struct *oplockThread; /* remove sparse warning */ |
67 | struct task_struct *oplockThread = NULL; | 67 | struct task_struct *oplockThread = NULL; |
68 | /* extern struct task_struct * dnotifyThread; remove sparse warning */ | 68 | /* extern struct task_struct * dnotifyThread; remove sparse warning */ |
69 | #ifdef CONFIG_CIFS_EXPERIMENTAL | ||
70 | static struct task_struct *dnotifyThread = NULL; | ||
71 | #endif | ||
72 | static const struct super_operations cifs_super_ops; | 69 | static const struct super_operations cifs_super_ops; |
73 | unsigned int CIFSMaxBufSize = CIFS_MAX_MSGSIZE; | 70 | unsigned int CIFSMaxBufSize = CIFS_MAX_MSGSIZE; |
74 | module_param(CIFSMaxBufSize, int, 0); | 71 | module_param(CIFSMaxBufSize, int, 0); |
@@ -1041,34 +1038,6 @@ static int cifs_oplock_thread(void *dummyarg) | |||
1041 | return 0; | 1038 | return 0; |
1042 | } | 1039 | } |
1043 | 1040 | ||
1044 | #ifdef CONFIG_CIFS_EXPERIMENTAL | ||
1045 | static int cifs_dnotify_thread(void *dummyarg) | ||
1046 | { | ||
1047 | struct list_head *tmp; | ||
1048 | struct TCP_Server_Info *server; | ||
1049 | |||
1050 | do { | ||
1051 | if (try_to_freeze()) | ||
1052 | continue; | ||
1053 | set_current_state(TASK_INTERRUPTIBLE); | ||
1054 | schedule_timeout(15*HZ); | ||
1055 | /* check if any stuck requests that need | ||
1056 | to be woken up and wakeq so the | ||
1057 | thread can wake up and error out */ | ||
1058 | read_lock(&cifs_tcp_ses_lock); | ||
1059 | list_for_each(tmp, &cifs_tcp_ses_list) { | ||
1060 | server = list_entry(tmp, struct TCP_Server_Info, | ||
1061 | tcp_ses_list); | ||
1062 | if (atomic_read(&server->inFlight)) | ||
1063 | wake_up_all(&server->response_q); | ||
1064 | } | ||
1065 | read_unlock(&cifs_tcp_ses_lock); | ||
1066 | } while (!kthread_should_stop()); | ||
1067 | |||
1068 | return 0; | ||
1069 | } | ||
1070 | #endif | ||
1071 | |||
1072 | static int __init | 1041 | static int __init |
1073 | init_cifs(void) | 1042 | init_cifs(void) |
1074 | { | 1043 | { |
@@ -1145,21 +1114,8 @@ init_cifs(void) | |||
1145 | goto out_unregister_dfs_key_type; | 1114 | goto out_unregister_dfs_key_type; |
1146 | } | 1115 | } |
1147 | 1116 | ||
1148 | #ifdef CONFIG_CIFS_EXPERIMENTAL | ||
1149 | dnotifyThread = kthread_run(cifs_dnotify_thread, NULL, "cifsdnotifyd"); | ||
1150 | if (IS_ERR(dnotifyThread)) { | ||
1151 | rc = PTR_ERR(dnotifyThread); | ||
1152 | cERROR(1, ("error %d create dnotify thread", rc)); | ||
1153 | goto out_stop_oplock_thread; | ||
1154 | } | ||
1155 | #endif | ||
1156 | |||
1157 | return 0; | 1117 | return 0; |
1158 | 1118 | ||
1159 | #ifdef CONFIG_CIFS_EXPERIMENTAL | ||
1160 | out_stop_oplock_thread: | ||
1161 | #endif | ||
1162 | kthread_stop(oplockThread); | ||
1163 | out_unregister_dfs_key_type: | 1119 | out_unregister_dfs_key_type: |
1164 | #ifdef CONFIG_CIFS_DFS_UPCALL | 1120 | #ifdef CONFIG_CIFS_DFS_UPCALL |
1165 | unregister_key_type(&key_type_dns_resolver); | 1121 | unregister_key_type(&key_type_dns_resolver); |
@@ -1197,9 +1153,6 @@ exit_cifs(void) | |||
1197 | cifs_destroy_inodecache(); | 1153 | cifs_destroy_inodecache(); |
1198 | cifs_destroy_mids(); | 1154 | cifs_destroy_mids(); |
1199 | cifs_destroy_request_bufs(); | 1155 | cifs_destroy_request_bufs(); |
1200 | #ifdef CONFIG_CIFS_EXPERIMENTAL | ||
1201 | kthread_stop(dnotifyThread); | ||
1202 | #endif | ||
1203 | kthread_stop(oplockThread); | 1156 | kthread_stop(oplockThread); |
1204 | } | 1157 | } |
1205 | 1158 | ||