Skip to content

Commit 5f09c92

Browse files
sharathmsrinivijay-suman
authored andcommitted
net/rds: Add missing switch/break in rds_recv_worker()
There is a missing break with an unintentional fallthrough in rds_recv_worker() when c_trans->recv_path(cp) returns -ENOMEM. While rds_ib_recv_path() sets ret = 0, rds_tcp_read_sock() can return non-zero and rds_tcp_data_recv() does return -ENOMEM in some cases, so it's reachable via rds_tcp.ko. Add the missing break; so we can reschedule the recv_worker with a delay of 2. Orabug: 38118668 Fixes: 3930fc5 ("rds: Avoid queuing superfluous send and recv work") Reviewed-by: Gerd Rausch <[email protected]> Signed-off-by: Sharath Srinivasan <[email protected]> Signed-off-by: Vijayendra Suman <[email protected]>
1 parent e4f3022 commit 5f09c92

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

net/rds/threads.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -400,6 +400,7 @@ void rds_recv_worker(struct work_struct *work)
400400
case -ENOMEM:
401401
rds_stats_inc(s_recv_delayed_retry);
402402
delay = 2;
403+
break;
403404
default:
404405
return;
405406
}

0 commit comments

Comments
 (0)