On Mon, Sep 19, 2016 at 1:33 AM, Mintz, Yuval <yuval.mi...@cavium.com> wrote: >> The existing code is inconsistent in reporting and accepting the combined >> channel count. bnxt_get_channels() reports maximum combined as the >> maximum rx count. bnxt_set_channels() accepts combined count that cannot be >> bigger than max rx or max tx. >> >> For example, if max rx = 2 and max tx = 1, we report max supported combined >> to >> be 2. But if the user tries to set combined to 2, it will fail because 2 is >> bigger >> than max tx which is 1. >> >> Fix the code to be consistent. Max allowed combined = max(max_rx, max_tx). >> We will accept a combined channel count <= max(max_rx, max_tx). > > Don't you mean the 'max allowed combined = min(max_rx, max_tx)'. > How does using 'max' change the faulty scenario you've described?
I'm fixing the inconsistency described in the first 2 paragraphs. The driver logic allows a combined ring to be rx or tx only. In the above example, we allow combined to be set to 2. The 2nd combined ring supports rx only.