Re: [PATCH v3] wifi: ath11k: move .max_tx_ring to struct ath11k_hw_hal_params
Jeff Johnson <[email protected]>
| Newsgroups | org.infradead.lists.ath11k,org.kernel.vger.linux-kernel,org.kernel.vger.linux-wireless |
|---|---|
| Message-ID | <[email protected]> |
On 1/12/2026 11:00 PM, Vasanthakumar Thiagarajan wrote: > > > On 12/28/2025 8:44 PM, Alexandru Gagniuc wrote: >> ".max_tx_ring" is an upper bounds to indexing ".tcl2wbm_rbm_map". It >> is initialized in, core.c, a different file than the array. This >> spaghetti-like relation is fragile and not obvious. Accidentally >> setting ".max_tx_ring" too high leads to a hard to track out-of- >> bounds access and memory corruption. >> >> There is a small ambiguity on the meaning of "max_tx_ring": >> - The highest ring, max=3 implies there are 4 rings (0, 1, 2, 3) >> - The highest number to use for array indexing (there are 3 rings) >> >> Clarify this dependency by moving ".max_tx_ring" adjacent to the array >> ".tcl2wbm_rbm_map", and name it "num_tx_rings". Use ARRAY_SIZE() >> instead of #defines to initialize the length field. >> >> The ath11k_hw_hal_params_qca6390 uses fewer num_tx_rings than its map, >> so use a constant to express the correct value. Add a static_assert() >> to fail compilation if the constant is accidentally set too high. > > Text related to static_assert to be removed accordingly. I removed the last sentence in 'pending', please check: https://git.kernel.org/pub/scm/linux/kernel/git/ath/ath.git/commit/?h=pending&id=26bb149b5e011b0f73f7b74421589cbd38e3304b > >> >> The intent is to make the code easier to understand rather than fix >> an existing bug. >> >> Signed-off-by: Alexandru Gagniuc <[email protected]> > > With the above minor comment addressed. > > Reviewed-by: Vasanthakumar Thiagarajan <[email protected]>