On Fri, Aug 15, 2025 at 4:15 PM Jakub Kicinski <[email protected]> wrote:
>
> ncdevmem tests that the kernel correctly rejects attempts
> to deactivate queues with MPs bound.
>
> Make the configure_channels() test support combined channels.
> Currently it tries to set the queue counts to rx N tx N-1,
> which only makes sense for devices which have IRQs per ring
> type. Most modern devices used combined IRQs/channels with
> both Rx and Tx queues. Since the math is total Rx == combined+Rx
> setting Rx when combined is non-zero will be increasing the total
> queue count, not decreasing as the test intends.
>
> Note that the test would previously also try to set the Tx
> ring count to Rx - 1, for some reason. Which would be 0
> if the device has only 2 queues configured.
>

Yes, I think that was a mistake. I can't think of any reason we'd
really want to do that.

> With this change (device with 2 queues):
>   setting channel count rx:1 tx:1
>   YNL set channels: Kernel error: 'requested channel counts are too low for 
> existing memory provider setting (2)'
>
> Signed-off-by: Jakub Kicinski <[email protected]>

Reviewed-by: Mina Almasry <[email protected]>

--
Thanks,
Mina

Reply via email to