OK. I guess that "combined" is what I would would have called "duplex": going in both directions.
If there's a need to configure this kind of thing, then I think that the documentation should summarize the kinds of channels and point to further documentation. On Wed, Jan 08, 2020 at 05:59:59PM -0800, Yi-Hung Wei wrote: > Hi Ben, > > After taking closer look at different driver implementations, I found > that the use of combined channels is actually driver dependent. > > From ethtool (8), a channel is an IRQ and the set of queues that can > trigger that IRQ. I tend to think channel as rx/tx queues from > software's point of view. There are 4 types of channels that ethtool > can configure, rx, tx, other, and combined. > > For Intel NICs, (at least for NICs that use ixgbe, i40 driver), we can > only configure channels through 'combined' parameter. It will set both > rx and tx channel to N with the following command. > $ ethool -L eth0 combined N > > However, it does not support configuring rx and tx channel separately. > We can only set/get number of combined channel, but not rx or tx > channel. > For example, > $ ethtool -l eth0 > Channel parameters for eth0: > Pre-set maximums: > RX: 0 > TX: 0 > Other: 1 > Combined: 63 > Current hardware settings: > RX: 0 > TX: 0 > Other: 1 > Combined: 8 > > On the other hand, NICs that use Broadcom tg3 drivers can configure > its rx and tx channel individually, but can not set with 'combined' > parameter. For Mellanox, mlx4 driver supports set/get rx/tx channels, > but mlx5 driver can only configured through combined channel. > > Another ethtool example with Broadcom NetXtreme BCM5720 NIC. > $ ethtool -L eno1 rx 2 tx 1 > $ ethtool -l eno1 > Channel parameters for eno1: > Pre-set maximums: > RX: 4 > TX: 4 > Other: 0 > Combined: 0 > Current hardware settings: > RX: 2 > TX: 1 > Other: 0 > Combined: 0 > > Back to this patch, what I was trying to do is to make sure that the > number of rx channels reported from ethtool is equal to n_rxq in > AF_XDP's port setting. Since, I was using a testbed with Intel NIC, I > assume to get # of rx channels from 'combined'. To support other > types of NICs, in the next version, I will first compare n_rxq with > 'rx'. In case of 'rx' is 0, 'combined' will be used. I will update > the related documentation as well. > > Thanks, > > -Yi-Hung > > > On Mon, Jan 6, 2020 at 2:15 PM Ben Pfaff <[email protected]> wrote: > > > > On Mon, Dec 23, 2019 at 11:33:57AM -0800, Yi-Hung Wei wrote: > > > This patches detects the number of combined channels on a AF_XDP port > > > via using ethtool interface. If the number of combined channels > > > is different from the n_rxq, netdev_afxdp will not be able to get > > > all the packets from that port. Thus, abort the port setup when > > > the case is detected. > > > > > > Signed-off-by: Yi-Hung Wei <[email protected]> > > > --- > > > Travis CI: https://travis-ci.org/YiHungWei/ovs/builds/627972465 > > > > I don't know what a combined channel is. Should the documentation talk > > about this? _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
