[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9083adf9-4e3f-47d9-8a79-d8fb052f99b5@redhat.com>
Date: Mon, 27 Jan 2025 11:19:18 +0100
From: Paolo Abeni <pabeni@...hat.com>
To: John Ousterhout <ouster@...stanford.edu>, netdev@...r.kernel.org
Cc: edumazet@...gle.com, horms@...nel.org, kuba@...nel.org
Subject: Re: [PATCH net-next v6 08/12] net: homa: create homa_incoming.c
On 1/15/25 7:59 PM, John Ousterhout wrote:
> + /* Each iteration through the following loop processes one packet. */
> + for (; skb; skb = next) {
> + h = (struct homa_data_hdr *)skb->data;
> + next = skb->next;
> +
> + /* Relinquish the RPC lock temporarily if it's needed
> + * elsewhere.
> + */
> + if (rpc) {
> + int flags = atomic_read(&rpc->flags);
> +
> + if (flags & APP_NEEDS_LOCK) {
> + homa_rpc_unlock(rpc);
> + homa_spin(200);
Why spinning on the current CPU here? This is completely unexpected, and
usually tolerated only to deal with H/W imposed delay while programming
some device registers.
/P
Powered by blists - more mailing lists