From: Håkon Bugge Date: Tue, 2 Apr 2019 13:56:14 +0000 (+0200) Subject: rds: Use rds_conn_path cp_wq when applicable X-Git-Tag: v4.1.12-124.31.3~109 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=6020e73276e28f5118c1d212b7eb0871c2621995;p=users%2Fjedix%2Flinux-maple.git rds: Use rds_conn_path cp_wq when applicable RDS has a two global work queues, one for loop-back connections and another one for remote connections. The struct rds_conn_path has a member cp_wq which is set to one of them. Use cp_wq consistently instead of the global ones. Orabug: 29391909 Signed-off-by: Håkon Bugge Tested-by: Rosa Lopez Reviewed-by: Hans Westgaard Ry Signed-off-by: Brian Maly --- diff --git a/net/rds/send.c b/net/rds/send.c index 98a0612fa11c..eb5d3563908f 100644 --- a/net/rds/send.c +++ b/net/rds/send.c @@ -1732,7 +1732,7 @@ rds_send_probe(struct rds_conn_path *cp, __be16 sport, rds_stats_inc(s_send_pong); if (!test_bit(RDS_LL_SEND_FULL, &cp->cp_flags)) - queue_delayed_work(rds_wq, &cp->cp_send_w, 0); + queue_delayed_work(cp->cp_wq, &cp->cp_send_w, 0); rds_message_put(rm); return 0; diff --git a/net/rds/tcp_recv.c b/net/rds/tcp_recv.c index 9eef9c7f5d4b..3daba826b4d5 100644 --- a/net/rds/tcp_recv.c +++ b/net/rds/tcp_recv.c @@ -322,7 +322,7 @@ void rds_tcp_data_ready(struct sock *sk) rds_tcp_stats_inc(s_tcp_data_ready_calls); if (rds_tcp_read_sock(cp, GFP_ATOMIC) == -ENOMEM) - queue_delayed_work(rds_wq, &cp->cp_recv_w, 0); + queue_delayed_work(cp->cp_wq, &cp->cp_recv_w, 0); out: read_unlock(&sk->sk_callback_lock); ready(sk); diff --git a/net/rds/tcp_send.c b/net/rds/tcp_send.c index 8dd3b8ccbe6f..119acfee3a8f 100644 --- a/net/rds/tcp_send.c +++ b/net/rds/tcp_send.c @@ -208,7 +208,7 @@ void rds_tcp_write_space(struct sock *sk) rds_send_path_drop_acked(cp, rds_tcp_snd_una(tc), rds_tcp_is_acked); if ((atomic_read(&sk->sk_wmem_alloc) << 1) <= sk->sk_sndbuf) - queue_delayed_work(rds_wq, &cp->cp_send_w, 0); + queue_delayed_work(cp->cp_wq, &cp->cp_send_w, 0); out: read_unlock(&sk->sk_callback_lock);