On Thu, 2022-02-10 at 05:14 +0000, Aloka Dixit (QUIC) wrote: > Hi Johannes, > > Considering that 20MHz-only STA and one that supports other bandwidths will not occur at the same time, > instead of a separate field for struct ieee80211_eht_mcs_nss_supp_20mhz_only inside struct ieee80211_eht_mcs_nss_supp, we can use a byte array as we added in here: > https://patchwork.kernel.org/project/linux-wireless/patch/1640163883-12696-3-git-send-email-quic_vjakkam@xxxxxxxxxxx/ > Instead of length field with dynamic allocation we can have an array of size 9 bytes. > We did something like that in our patches: https://patchwork.kernel.org/project/linux-wireless/patch/20220204230119.b0eeb527d761.I2413a37c8f7d2d6d638038a3d95360a3fce0114d@changeid/ https://patchwork.kernel.org/project/linux-wireless/patch/20220204230119.1ee92202ac30.Id30a3ef2844b296efbd5486fe1da9ca36a95c5cf@changeid/ Not overlapping wastes like 4 bytes of memory, I think I can live with that, vs. the extra complexity? If you overlap you need another bit to indicate which one you're using ... johannes