Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Jan 2024 16:03:14 +0100
From:      Daniel <freebsd-net@c0decafe.de>
To:        freebsd-net@freebsd.org
Subject:   problem with ixl(4) and vlans
Message-ID:  <3779d6c1-48de-4941-9444-36d69890be26@c0decafe.de>

next in thread | raw e-mail | index | archive | help
<!DOCTYPE html>
<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hi List,
      <br>
      <br>
      <br>
      just recently I discovered a problem with the ixl(4) driver.
      Hopefully someone here
      can help me. my setup is as follows:
      <br>
      <br>
      <br>
      Network ----- ixl3 interface ----- ixl3.15 vlan interface -----
      bridge0 ----- vnet0.1 to jail
      <br>
      <br>
      <br>
      the problem now is that the jail can send data out (arp requests),
      i do see the responses on the ixl3 interface of the host, but they
      never make their way up to the ixl3.15 vlan interface (even though
      they are tagged correctly). To rule out that my config or the
      network is the cruel pit i did test the same setup with a cheap
      usb-ethernet adapter and there everything works as expected. I'm
      on FreeBSD 13.2-RELEASE-p8 and I did test both, the in kernel
      driver and the driver from ports intel-ixl-kmod-1.13.4_1.
      <br>
      <br>
      Here is a bit of information on my environment:
      <br>
      <br>
      # uname -a
      <br>
      FreeBSD mimir 13.2-RELEASE-p8 FreeBSD 13.2-RELEASE-p8 GENERIC
      amd64
      <br>
      <br>
      # pciconf -lBbcevV pci0:25:0:3
      <br>
      ixl3@pci0:25:0:3:       class=0x020000 rev=0x09 hdr=0x00
      vendor=0x8086 device=0x37d3 subvendor=0x8086 subdevice=0x35d5
      <br>
          vendor     = 'Intel Corporation'
      <br>
          device     = 'Ethernet Connection X722 for 10GbE SFP+'
      <br>
          class      = network
      <br>
          subclass   = ethernet
      <br>
          bar   [10] = type Prefetchable Memory, range 64, base
      0xb0000000, size 16777216, enabled
      <br>
          bar   [1c] = type Prefetchable Memory, range 64, base
      0xb5000000, size 32768, enabled
      <br>
          cap 01[40] = powerspec 3  supports D0 D3  current D0
      <br>
          cap 05[50] = MSI supports 1 message, 64 bit, vector masks
      <br>
          cap 11[70] = MSI-X supports 129 messages, enabled
      <br>
                       Table in map 0x1c[0x0], PBA in map 0x1c[0x1000]
      <br>
          cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO
      <br>
                       max read 512
      <br>
                       link x1(x1) speed 2.5(2.5) ASPM disabled(L0s/L1)
      <br>
          cap 03[e0] = VPD
      <br>
          ecap 0001[100] = AER 2 0 fatal 0 non-fatal 1 corrected
      <br>
          ecap 0003[140] = Serial 1 9aef76ffff01bfa4
      <br>
          ecap 000e[150] = ARI 1
      <br>
          ecap 0010[160] = SR-IOV 1 IOV disabled, Memory Space disabled,
      ARI disabled
      <br>
                           0 VFs configured out of 32 supported
      <br>
                           First VF RID Offset 0x006d, VF RID Stride
      0x0001
      <br>
                           VF Device ID 0x37cd
      <br>
                           Page Sizes: 4096 (enabled), 8192, 65536,
      262144, 1048576, 4194304
      <br>
          ecap 0017[1a0] = TPH Requester 1
      <br>
          ecap 000d[1b0] = ACS 1 Source Validation unavailable,
      Translation Blocking unavailable
      <br>
                           P2P Req Redirect unavailable, P2P Cmpl
      Redirect unavailable
      <br>
                           P2P Upstream Forwarding unavailable, P2P
      Egress Control unavailable
      <br>
                           P2P Direct Translated unavailable, Enhanced
      Capability unavailable
      <br>
        PCI-e errors = Correctable Error Detected
      <br>
                       Unsupported Request Detected
      <br>
           Corrected = Advisory Non-Fatal Error
      <br>
          VPD ident  = 'Example VPD' <br>
    </p>
    <p># ifconfig<br>
      [...]<br>
      ixl3:
      flags=8963&lt;UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST&gt;
      metric 0 mtu 1500<br>
             
options=4a500b9&lt;RXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,NOMAP&gt;<br>
              ether a4:bf:01:76:ef:9d<br>
              media: Ethernet autoselect (10Gbase-SR
      &lt;full-duplex&gt;)<br>
              status: active<br>
              nd6 options=29&lt;PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL&gt;<br>
      ixl3.15:
      flags=8942&lt;BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST&gt;
      metric 0 mtu 1500<br>
              options=4200001&lt;RXCSUM,RXCSUM_IPV6,NOMAP&gt;<br>
              ether a4:bf:01:76:ef:9d<br>
              groups: vlan<br>
              vlan: 15 vlanproto: 802.1q vlanpcp: 0 parent interface:
      ixl3<br>
              media: Ethernet autoselect (10Gbase-SR
      &lt;full-duplex&gt;)<br>
              status: active<br>
              nd6 options=29&lt;PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL&gt;<br>
      bridge0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST&gt;
      metric 0 mtu 1500<br>
              ether 58:9c:fc:10:dd:05<br>
              inet 192.168.55.20 netmask 0xffffff00 broadcast
      192.168.55.255<br>
              id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay
      15<br>
              maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200<br>
              root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0<br>
              member: vnet0.1
      flags=143&lt;LEARNING,DISCOVER,AUTOEDGE,AUTOPTP&gt;<br>
                      ifmaxaddr 0 port 9 priority 128 path cost 2000<br>
              member: ixl3.15
      flags=143&lt;LEARNING,DISCOVER,AUTOEDGE,AUTOPTP&gt;<br>
                      ifmaxaddr 0 port 8 priority 128 path cost 55<br>
              groups: bridge<br>
              nd6 options=9&lt;PERFORMNUD,IFDISABLED&gt;<br>
      [...]
    </p>
    <p><br>
    </p>
    <p>
      <br>
      # cat /etc/rc.conf
      <br>
      [...]
      <br>
      ifconfig_ixl3="up"
      <br>
      vlans_ixl3="15"
      <br>
      cloned_interfaces="bridge0"
      <br>
      ifconfig_bridge0="addm ixl3.15 up"
      <br>
      [...]<br>
      <br>
      <br>
      <br>
      # dmesg | grep ixl
      <br>
      ixl0: &lt;Intel(R) Ethernet Connection X722 for 10GBASE-T -
      2.3.3-k&gt; mem 0xb3000000-0xb3ffffff,0xb5018000-0xb501ffff at
      device 0.0 numa-domain 0 on pci6
      <br>
      ixl0: fw 3.1.55727 api 1.5 nvm 3.31 etid 80000d32 oem 1.262.0
      <br>
      ixl0: PF-ID[0]: VFs 32, MSI-X 129, VF MSI-X 5, QPs 384, MDIO
      shared
      <br>
      ixl0: Using 1024 TX descriptors and 1024 RX descriptors
      <br>
      ixl0: Using 12 RX queues 12 TX queues
      <br>
      ixl0: Using MSI-X interrupts with 13 vectors
      <br>
      ixl0: Ethernet address: a4:bf:01:76:ef:9a
      <br>
      ixl0: Allocating 16 queues for PF LAN VSI; 12 queues active
      <br>
      ixl0: SR-IOV ready
      <br>
      ixl0: netmap queues/slots: TX 12/1024, RX 12/1024
      <br>
      ixl1: &lt;Intel(R) Ethernet Connection X722 for 10GBASE-T -
      2.3.3-k&gt; mem 0xb2000000-0xb2ffffff,0xb5010000-0xb5017fff at
      device 0.1 numa-domain 0 on pci6
      <br>
      ixl1: fw 3.1.55727 api 1.5 nvm 3.31 etid 80000d32 oem 1.262.0
      <br>
      ixl1: PF-ID[1]: VFs 32, MSI-X 129, VF MSI-X 5, QPs 384, MDIO
      shared
      <br>
      ixl1: Using 1024 TX descriptors and 1024 RX descriptors
      <br>
      ixl1: Using 12 RX queues 12 TX queues
      <br>
      ixl1: Using MSI-X interrupts with 13 vectors
      <br>
      ixl1: Ethernet address: a4:bf:01:76:ef:9b
      <br>
      ixl1: Allocating 16 queues for PF LAN VSI; 12 queues active
      <br>
      ixl1: SR-IOV ready
      <br>
      ixl1: netmap queues/slots: TX 12/1024, RX 12/1024
      <br>
      ixl2: &lt;Intel(R) Ethernet Connection X722 for 10GbE SFP+ -
      2.3.3-k&gt; mem 0xb1000000-0xb1ffffff,0xb5008000-0xb500ffff at
      device 0.2 numa-domain 0 on pci6
      <br>
      ixl2: fw 3.1.55727 api 1.5 nvm 3.31 etid 80000d32 oem 1.262.0
      <br>
      ixl2: PF-ID[2]: VFs 32, MSI-X 129, VF MSI-X 5, QPs 384, I2C
      <br>
      ixl2: Using 1024 TX descriptors and 1024 RX descriptors
      <br>
      ixl2: Using 12 RX queues 12 TX queues
      <br>
      ixl2: Using MSI-X interrupts with 13 vectors
      <br>
      ixl2: Ethernet address: a4:bf:01:76:ef:9c
      <br>
      ixl2: Allocating 16 queues for PF LAN VSI; 12 queues active
      <br>
      ixl2: ixl_set_link: Error getting phy capabilities -7, aq error: 5
      <br>
      ixl2: SR-IOV ready
      <br>
      ixl2: netmap queues/slots: TX 12/1024, RX 12/1024
      <br>
      ixl3: &lt;Intel(R) Ethernet Connection X722 for 10GbE SFP+ -
      2.3.3-k&gt; mem 0xb0000000-0xb0ffffff,0xb5000000-0xb5007fff at
      device 0.3 numa-domain 0 on pci6
      <br>
      ixl3: fw 3.1.55727 api 1.5 nvm 3.31 etid 80000d32 oem 1.262.0
      <br>
      ixl3: PF-ID[3]: VFs 32, MSI-X 129, VF MSI-X 5, QPs 384, I2C
      <br>
      ixl3: Using 1024 TX descriptors and 1024 RX descriptors
      <br>
      ixl3: Using 12 RX queues 12 TX queues
      <br>
      ixl3: Using MSI-X interrupts with 13 vectors
      <br>
      ixl3: Ethernet address: a4:bf:01:76:ef:9d
      <br>
      ixl3: Allocating 16 queues for PF LAN VSI; 12 queues active
      <br>
      ixl3: ixl_set_link: Error getting phy capabilities -7, aq error: 5
      <br>
      ixl3: SR-IOV ready
      <br>
      ixl3: netmap queues/slots: TX 12/1024, RX 12/1024
      <br>
      ixl2: Link is up, 10 Gbps Full Duplex, Requested FEC: None,
      Negotiated FEC: None, Autoneg: False, Flow Control: None
      <br>
      ixl2: link state changed to UP
      <br>
      ixl3: Link is up, 10 Gbps Full Duplex, Requested FEC: None,
      Negotiated FEC: None, Autoneg: False, Flow Control: None
      <br>
      ixl3: link state changed to UP
      <br>
      bridge0: can't disable some capabilities on ixl3.15: 0x400
      <br>
      ixl3: promiscuous mode enabled
      <br>
      ixl3.15: promiscuous mode enabled
      <br>
      <br>
      <br>
      from my packet traces:
      <br>
      <br>
      # tcpdump -vvv -i ixl3
      <br>
      tcpdump: listening on ixl3, link-type EN10MB (Ethernet), capture
      size 262144 bytes
      <br>
      [...]
      <br>
      13:36:20.155843 ARP, Ethernet (len 6), IPv4 (len 4), Request
      who-has 192.168.55.1 tell 192.168.55.10, length 28
      <br>
      13:36:20.156285 ARP, Ethernet (len 6), IPv4 (len 4), Reply
      192.168.55.1 is-at b8:27:eb:47:8f:43 (oui Unknown), length 46
      <br>
      13:36:21.169003 ARP, Ethernet (len 6), IPv4 (len 4), Request
      who-has 192.168.55.1 tell 192.168.55.10, length 28
      <br>
      13:36:21.169538 ARP, Ethernet (len 6), IPv4 (len 4), Reply
      192.168.55.1 is-at b8:27:eb:47:8f:43 (oui Unknown), length 46
      <br>
      <br>
      Here the answer can be see, its tagged with 802.1q tag 15
      <br>
      <br>
      <br>
      # tcpdump -vvv -i ixl3.15
      <br>
      tcpdump: listening on ixl3.15, link-type EN10MB (Ethernet),
      capture size 262144 bytes
      <br>
      14:14:37.255429 ARP, Ethernet (len 6), IPv4 (len 4), Request
      who-has 192.168.55.1 tell 192.168.55.10, length 28
      <br>
      14:14:42.263475 ARP, Ethernet (len 6), IPv4 (len 4), Request
      who-has 192.168.55.1 tell 192.168.55.10, length 28
      <br>
      14:15:02.556311 ARP, Ethernet (len 6), IPv4 (len 4), Request
      who-has 192.168.55.1 tell 192.168.55.10, length 28
      <br>
      14:15:07.557644 ARP, Ethernet (len 6), IPv4 (len 4), Request
      who-has 192.168.55.1 tell 192.168.55.10, length 28
      <br>
      <br>
      The answer cannot be seen on the VLAN interface ):
      <br>
      <br>
      <br>
      I hope the list can help me out here, as I am lost.<br>
      <br>
      <br>
      Thanks &amp; best</p>
    <p><br>
    </p>
    <p>Daniel<br>
    </p>
  </body>
</html>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3779d6c1-48de-4941-9444-36d69890be26>