File tree Expand file tree Collapse file tree 1 file changed +2
-1
lines changed Expand file tree Collapse file tree 1 file changed +2
-1
lines changed Original file line number Diff line number Diff line change @@ -2218,6 +2218,7 @@ static int allocate_mr_list(struct smbd_connection *info)
22182218 atomic_set (& info -> mr_ready_count , 0 );
22192219 atomic_set (& info -> mr_used_count , 0 );
22202220 init_waitqueue_head (& info -> wait_for_mr_cleanup );
2221+ INIT_WORK (& info -> mr_recovery_work , smbd_mr_recovery_work );
22212222 /* Allocate more MRs (2x) than hardware responder_resources */
22222223 for (i = 0 ; i < info -> responder_resources * 2 ; i ++ ) {
22232224 smbdirect_mr = kzalloc (sizeof (* smbdirect_mr ), GFP_KERNEL );
@@ -2245,13 +2246,13 @@ static int allocate_mr_list(struct smbd_connection *info)
22452246 list_add_tail (& smbdirect_mr -> list , & info -> mr_list );
22462247 atomic_inc (& info -> mr_ready_count );
22472248 }
2248- INIT_WORK (& info -> mr_recovery_work , smbd_mr_recovery_work );
22492249 return 0 ;
22502250
22512251out :
22522252 kfree (smbdirect_mr );
22532253
22542254 list_for_each_entry_safe (smbdirect_mr , tmp , & info -> mr_list , list ) {
2255+ list_del (& smbdirect_mr -> list );
22552256 ib_dereg_mr (smbdirect_mr -> mr );
22562257 kfree (smbdirect_mr -> sgl );
22572258 kfree (smbdirect_mr );
You can’t perform that action at this time.
0 commit comments