lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260109025143.2854604-1-kuba@kernel.org>
Date: Thu,  8 Jan 2026 18:51:43 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: achender@...nel.org
Cc: Jakub Kicinski <kuba@...nel.org>,
	edumazet@...gle.com,
	pabeni@...hat.com,
	linux-rdma@...r.kernel.org,
	rds-devel@....oracle.com,
	horms@...nel.org,
	netdev@...r.kernel.org,
	allison.henderson@...cle.com
Subject: Re: [net-next,v4,1/2] net/rds: Add per cp work queue

This is an automated AI-generated review of your patch.

For local reproduction steps see https://netdev-ai.bots.linux.dev/ai-local.html
---
commit 0d0b74852d11c82ac7d91c72b33c5dccb75934c5
Author: Allison Henderson <allison.henderson@...cle.com>

    net/rds: Add per cp work queue

This patch adds cp_wq to struct rds_conn_path and substitutes rds_wq with
cp->cp_wq throughout the RDS codebase to enable per-connection workqueue
management.

> diff --git a/net/rds/ib_send.c b/net/rds/ib_send.c
> index 4190b90ff3b1..e35bbb6ffb68 100644
> --- a/net/rds/ib_send.c
> +++ b/net/rds/ib_send.c
> @@ -419,7 +419,7 @@ void rds_ib_send_add_credits(struct rds_connection *conn, unsigned int credits)
>
>  	atomic_add(IB_SET_SEND_CREDITS(credits), &ic->i_credits);
>  	if (test_and_clear_bit(RDS_LL_SEND_FULL, &conn->c_flags))
> -		queue_delayed_work(rds_wq, &conn->c_send_w, 0);
> +		queue_delayed_work(conn->c_path->cp_wq, &conn->c_send_w, 0);
>
>  	WARN_ON(IB_GET_SEND_CREDITS(credits) >= 16384);

This substitution in rds_ib_send_add_credits() looks correct, but was the
similar call site in rds_ib_send_cqe_handler() in the same file
intentionally left unchanged? That function still uses:

    queue_delayed_work(rds_wq, &conn->c_send_w, 0);

Both functions have access to conn->c_path->cp_wq, so the inconsistency
seems unintentional. If some call sites should remain on the global rds_wq
while others use the per-connection workqueue, it would help to understand
the reasoning.

Similarly, rds_cong_queue_updates() in net/rds/cong.c still uses:

    queue_delayed_work(rds_wq, &cp->cp_send_w, 0);

even though it already has cp available. Should this also be updated to
use cp->cp_wq for consistency with the other substitutions?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ