Re: [PATCH net-next v4 10/15] quic: add packet number space
Paolo Abeni <[email protected]> Tue, 4 Nov 2025 13:17:26 +0100
| Newsgroups | dev.linux.lists.quic,dev.linux.lists.kernel-tls-handshake,org.kernel.vger.linux-cifs,org.kernel.vger.netdev |
|---|---|
| Message-ID | <[email protected]> |
On 10/29/25 3:35 PM, Xin Long wrote:
> +struct quic_pnspace {
> + /* ECN counters indexed by direction (TX/RX) and ECN codepoint (ECT1, ECT0, CE) */
> + u64 ecn_count[QUIC_ECN_DIR_MAX][QUIC_ECN_MAX];
> + unsigned long *pn_map; /* Bit map tracking received packet numbers for ACK generation */
> + u16 pn_map_len; /* Length of the packet number bit map (in bits) */
> + u8 need_sack:1; /* Flag indicating a SACK frame should be sent for this space */
> + u8 sack_path:1; /* Path used for sending the SACK frame */
> +
> + s64 last_max_pn_seen; /* Highest packet number seen before pn_map advanced */
> + u32 last_max_pn_time; /* Timestamp when last_max_pn_seen was received */
> + u32 max_time_limit; /* Time threshold to trigger pn_map advancement on packet receipt */
> + s64 min_pn_seen; /* Smallest packet number received in this space */
> + s64 max_pn_seen; /* Largest packet number received in this space */
> + u32 max_pn_time; /* Time at which max_pn_seen was received */
> + s64 base_pn; /* Packet number corresponding to the start of the pn_map */
> + u32 time; /* Cached current time, or time accept a socket (listen socket) */
There are a few 32 bits holes above you could avoid reordering the fields.
Otherwise LGTM,
Acked-by: Paolo Abeni <[email protected]>