[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <55bc21b1-2f37-4ade-8233-b30a9e0274c7@lunn.ch>
Date: Wed, 30 Oct 2024 01:42:14 +0100
From: Andrew Lunn <andrew@...n.ch>
To: John Ousterhout <ouster@...stanford.edu>
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net-next 09/12] net: homa: create homa_outgoing.c
> +/**
> + * homa_check_nic_queue() - This function is invoked before passing a packet
> + * to the NIC for transmission. It serves two purposes. First, it maintains
> + * an estimate of the NIC queue length. Second, it indicates to the caller
> + * whether the NIC queue is so full that no new packets should be queued
> + * (Homa's SRPT depends on keeping the NIC queue short).
> + * @homa: Overall data about the Homa protocol implementation.
> + * @skb: Packet that is about to be transmitted.
> + * @force: True means this packet is going to be transmitted
> + * regardless of the queue length.
> + * Return: Nonzero is returned if either the NIC queue length is
> + * acceptably short or @force was specified. 0 means that the
> + * NIC queue is at capacity or beyond, so the caller should delay
> + * the transmission of @skb. If nonzero is returned, then the
> + * queue estimate is updated to reflect the transmission of @skb.
You might want to look into BQL. What you have here i assume only
takes into account homa traffic. BQL, being in the NIC itself, will
tell you about all other traffic as well.
Andrew
Powered by blists - more mailing lists