Skip to content

Commit e2e8751

Browse files
metze-sambasmfrench
authored andcommitted
cifs: call wake_up(&server->response_q) inside of cifs_reconnect()
This means it's consistently called and the callers don't need to care about it. Signed-off-by: Stefan Metzmacher <[email protected]> Reviewed-by: Pavel Shilovsky <[email protected]> Signed-off-by: Steve French <[email protected]>
1 parent bacd704 commit e2e8751

File tree

3 files changed

+2
-9
lines changed

3 files changed

+2
-9
lines changed

fs/cifs/cifssmb.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1602,7 +1602,6 @@ cifs_readv_receive(struct TCP_Server_Info *server, struct mid_q_entry *mid)
16021602
if (server->ops->is_session_expired &&
16031603
server->ops->is_session_expired(buf)) {
16041604
cifs_reconnect(server);
1605-
wake_up(&server->response_q);
16061605
return -1;
16071606
}
16081607

fs/cifs/connect.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -489,6 +489,7 @@ cifs_reconnect(struct TCP_Server_Info *server)
489489
dfs_cache_free_tgts(&tgt_list);
490490
cifs_put_tcp_super(sb);
491491
#endif
492+
wake_up(&server->response_q);
492493
return rc;
493494
} else
494495
server->tcpStatus = CifsNeedReconnect;
@@ -623,6 +624,7 @@ cifs_reconnect(struct TCP_Server_Info *server)
623624
if (server->tcpStatus == CifsNeedNegotiate)
624625
mod_delayed_work(cifsiod_wq, &server->echo, 0);
625626

627+
wake_up(&server->response_q);
626628
return rc;
627629
}
628630

@@ -717,7 +719,6 @@ server_unresponsive(struct TCP_Server_Info *server)
717719
cifs_server_dbg(VFS, "has not responded in %lu seconds. Reconnecting...\n",
718720
(3 * server->echo_interval) / HZ);
719721
cifs_reconnect(server);
720-
wake_up(&server->response_q);
721722
return true;
722723
}
723724

@@ -850,7 +851,6 @@ is_smb_response(struct TCP_Server_Info *server, unsigned char type)
850851
*/
851852
cifs_set_port((struct sockaddr *)&server->dstaddr, CIFS_PORT);
852853
cifs_reconnect(server);
853-
wake_up(&server->response_q);
854854
break;
855855
default:
856856
cifs_server_dbg(VFS, "RFC 1002 unknown response type 0x%x\n", type);
@@ -1022,7 +1022,6 @@ standard_receive3(struct TCP_Server_Info *server, struct mid_q_entry *mid)
10221022
server->vals->header_preamble_size) {
10231023
cifs_server_dbg(VFS, "SMB response too long (%u bytes)\n", pdu_length);
10241024
cifs_reconnect(server);
1025-
wake_up(&server->response_q);
10261025
return -ECONNABORTED;
10271026
}
10281027

@@ -1070,7 +1069,6 @@ cifs_handle_standard(struct TCP_Server_Info *server, struct mid_q_entry *mid)
10701069
if (server->ops->is_session_expired &&
10711070
server->ops->is_session_expired(buf)) {
10721071
cifs_reconnect(server);
1073-
wake_up(&server->response_q);
10741072
return -1;
10751073
}
10761074

@@ -1164,7 +1162,6 @@ cifs_demultiplex_thread(void *p)
11641162
cifs_server_dbg(VFS, "SMB response too short (%u bytes)\n",
11651163
server->pdu_size);
11661164
cifs_reconnect(server);
1167-
wake_up(&server->response_q);
11681165
continue;
11691166
}
11701167

fs/cifs/smb2ops.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4151,7 +4151,6 @@ handle_read_data(struct TCP_Server_Info *server, struct mid_q_entry *mid,
41514151
if (server->ops->is_session_expired &&
41524152
server->ops->is_session_expired(buf)) {
41534153
cifs_reconnect(server);
4154-
wake_up(&server->response_q);
41554154
return -1;
41564155
}
41574156

@@ -4515,14 +4514,12 @@ smb3_receive_transform(struct TCP_Server_Info *server,
45154514
cifs_server_dbg(VFS, "Transform message is too small (%u)\n",
45164515
pdu_length);
45174516
cifs_reconnect(server);
4518-
wake_up(&server->response_q);
45194517
return -ECONNABORTED;
45204518
}
45214519

45224520
if (pdu_length < orig_len + sizeof(struct smb2_transform_hdr)) {
45234521
cifs_server_dbg(VFS, "Transform message is broken\n");
45244522
cifs_reconnect(server);
4525-
wake_up(&server->response_q);
45264523
return -ECONNABORTED;
45274524
}
45284525

0 commit comments

Comments
 (0)