Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Intel X710 Issues

    Scheduled Pinned Locked Moved Hardware
    37 Posts 10 Posters 8.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      mloiterman @mloiterman
      last edited by mloiterman

      @mloiterman

      I've now upgrade the firmware on the X710 and replaced the modem with an Arris S33.

      dev.ixl.0.fw_version: fw 8.2.64244 api 1.13 nvm 8.20 etid 8000a062 oem 1.267.0
      

      Since upgrading the firmware, now the interface shows:

      media: Ethernet autoselect (2500Base-T <full-duplex>)
      

      but on speed tests the best I'm able to do is about 750 or 800.

      So, something is still going on.

      dev.ixl.0.iflib.driver_version: 2.3.0-k
      

      But really strange and inconsistent download performance:

      speedtest-cli --server 1776
      Retrieving speedtest.net configuration...
      Testing from Comcast Cable (xxxxxxxxx)...
      Retrieving speedtest.net server list...
      Retrieving information for the selected server...
      Hosted by Comcast (Chicago, IL) [38.69 km]: 44.566 ms
      Testing download speed................................................................................
      Download: 1140.00 Mbit/s
      Testing upload speed......................................................................................................
      Upload: 42.13 Mbit/s
      [mike@arch ~]$ speedtest-cli --server 1776
      Retrieving speedtest.net configuration...
      Testing from Comcast Cable (xxxxxxxxx)...
      Retrieving speedtest.net server list...
      Retrieving information for the selected server...
      Hosted by Comcast (Chicago, IL) [38.69 km]: 13.061 ms
      Testing download speed................................................................................
      Download: 701.39 Mbit/s
      Testing upload speed.....................................................................................................
      .Upload: 35.68 Mbit/s
      

      How can I add and use the newest intel driver?

      NollipfSenseN 1 Reply Last reply Reply Quote 0
      • NollipfSenseN
        NollipfSense @mloiterman
        last edited by

        @mloiterman said in Intel X710 Issues:

        How can I add and use the newest intel driver?

        It should already be in V2.5 ... I believe!

        pfSense+ 23.09 Lenovo Thinkcentre M93P SFF Quadcore i7 dual Raid-ZFS 128GB-SSD 32GB-RAM PCI-Intel i350-t4 NIC, -Intel QAT 8950.
        pfSense+ 23.09 VM-Proxmox, Dell Precision Xeon-W2155 Nvme 500GB-ZFS 128GB-RAM PCIe-Intel i350-t4, Intel QAT-8950, P-cloud.

        M 1 Reply Last reply Reply Quote 0
        • M
          mloiterman @NollipfSense
          last edited by

          @nollipfsense

          Looks like the intel driver is at 3.3.22...?

          1 Reply Last reply Reply Quote 0
          • stephenw10S
            stephenw10 Netgate Administrator
            last edited by stephenw10

            Definitely try disabling flow control. Those should be added as sysctls/system tunables for ixl:
            https://www.freebsd.org/cgi/man.cgi?query=ixl#SYSCTL_PROCEDURES

            Steve

            M 1 Reply Last reply Reply Quote 0
            • M
              mloiterman @stephenw10
              last edited by

              @stephenw10

              Appreciate the response.

              But it seems like it's already disabled:

              sysctl -a | grep dev.ixl.0.fc
              dev.ixl.0.fc: 0
              

              Is there another place where I need to check?

              1 Reply Last reply Reply Quote 0
              • M
                mloiterman
                last edited by

                dmesg | grep ^ixl
                ixl0: Link is up, 2.5 Gbps Full Duplex, Requested FEC: None, Negotiated FEC: CL74 FC-FEC/BASE-R, Autoneg: True, Flow Control:
                ixl0: link state changed to UP
                ixl1: Link is up, 10 Gbps Full Duplex, Requested FEC: None, Negotiated FEC: CL74 FC-FEC/BASE-R, Autoneg: True, Flow Control: N
                ixl1: link state changed to UP
                

                So it seems like despite:

                sysctl -a | grep dev.ixl.0.fc
                dev.ixl.0.fc: 0
                

                Flow Control is N for ixl1 but empty for ixl0.

                This is so frustrating - it makes no sense.

                1 Reply Last reply Reply Quote 0
                • stephenw10S
                  stephenw10 Netgate Administrator
                  last edited by

                  ifconfig still shows rxpause, txpause?

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    mloiterman @stephenw10
                    last edited by

                    @stephenw10

                    No not after upgrading the firmware on the card.

                    I tried enabling flow control by setting it to sequential setting it to 0,1,2,3 through the tunables page. I could get it to turn on txpause but not rxpause which is wierd because initially, before upgrading firmware, I could not get rxpause to turn off.

                    I did not reboot or reboot the modem inbetween changing those settings though.

                    1 Reply Last reply Reply Quote 0
                    • stephenw10S
                      stephenw10 Netgate Administrator
                      last edited by

                      Flow control is negotiated so you won't see it in the ifconfig output if the other side doesn't support it. You can force it on or off though on some NICs.

                      Steve

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mloiterman @stephenw10
                        last edited by

                        @stephenw10

                        OK, I got it figured out.

                        I had to enable flow control on my switch for the port connected to pfSense and had to enable full flow control for the X710 port connected to my switch with these systctl tunables in System/Advanced/System Tunables:

                        dev.ixl.1.fc
                        3
                        Enable flow control

                        Now I can get ~ 945Mbs for the machines connected with 1G NICs and ~1,200Mbs for the 10G NICs.

                        L 1 Reply Last reply Reply Quote 0
                        • stephenw10S
                          stephenw10 Netgate Administrator
                          last edited by

                          Ah, nice result. Interesting. I guess you are hitting something that requires flow-control to mitigate which is unusual.

                          Steve

                          L 1 Reply Last reply Reply Quote 0
                          • L
                            lnguyen @mloiterman
                            last edited by lnguyen

                            @mloiterman

                            Did you update the drivers after updating the NVM firmware? I just updated to 8.30 FW, but following your steps, I have been unable to acheive the same results.

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              mloiterman @lnguyen
                              last edited by

                              @lnguyen

                              Yes, I compiled the latest version of intel's driver against the kernel in 2.5.1.

                              I can help you with that if you need it, but it will have to wait until later this week.

                              F 1 Reply Last reply Reply Quote 0
                              • F
                                froboz @mloiterman
                                last edited by

                                @mloiterman I would be interested in the compile instructions as well as I have the same issue you have although I did manage a work around with the old firmware 8.10. I updated the firmware to 8.30 :-( . I could reverse the firmware update but I figured I would move forward through this problem :-) . Something is seriously wrong with this card and PFsense at the moment and I hope netgate finds the time to fix it. Thanks

                                1 Reply Last reply Reply Quote 0
                                • M
                                  mloiterman
                                  last edited by

                                  I’ve updated to the 8.30 firmware and the 1.12.16 version of the driver and it still seems like I need to enable Flow Control on the LAN side port of the X710 and the switch port it’s connected to.

                                  For anyone that is interested here’s the basic steps to build you’re own version of the Intel driver.

                                  1. Get yourself a FreeBSD system where you can download source files and compile the driver. I would suggest NOT using your pfSense system to do this kind of work.
                                  2. Once you’ve got your FreeBSD system setup, do a deep clone of the source repository. For 12.2-RELEASE:
                                  # git clone -b releng/12.2 https://git.freebsd.org/src.git /usr/src
                                  
                                  1. Determine which version of pfSense your kernel was compiled against from here. For pfSense CE 2.5.1, for example, it’s 12.2-STABLE@f4d0bc6aa6b.
                                  2. On the system where you’ve cloned the source tree in step 2, check out the specific version of the source tree you’ve determined in step 3 by using the hash value at the end of the version string:
                                  # cd /usr/src
                                  # git checkout f4d0bc6aa6b
                                  
                                  1. Download the driver source files from Intel. For 1.12.16, they can be found here.

                                  2. Untar the archive:

                                  # tar zxf ixl-1.12.16.tar.gz
                                  

                                  This will create the ixl-1.12.16 directory.

                                  1. To load the driver onto a running system:
                                  # cd ixl-1.12.16/src
                                  # make
                                  # kldload ./if_ixl.ko
                                  
                                  L 1 Reply Last reply Reply Quote 2
                                  • L
                                    lnguyen @mloiterman
                                    last edited by

                                    @mloiterman

                                    Did you copy this to /boot/kernel to make it persistant?

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      mloiterman @lnguyen
                                      last edited by

                                      @lnguyen

                                      No, you place the kernel module in /boot/modules.

                                      Make sure the module is set to root:wheel and the permissions are 555:

                                      # chown root:wheel if_ixl.ko && chmod 555 if_ixl.ko
                                      

                                      and then in /boot/loader.conf.local, which may not exist unless you create it, you'll need to add:

                                      if_ixl_load="YES"
                                      
                                      L R 2 Replies Last reply Reply Quote 1
                                      • L
                                        lnguyen @mloiterman
                                        last edited by lnguyen

                                        @mloiterman

                                        Thanks. Running into some issues in my scenario.

                                        • IPv6 addresses for WAN and LAN are no longer populated
                                        • 1Gbps hosts are still not reaching 942Mbps
                                        • WAN Interface showing unknown speed
                                        • The interface status for ixl1 does not reflect rxpause, txpause (driver loaded confirmed)
                                        1 Reply Last reply Reply Quote 0
                                        • C
                                          ChuckLasher
                                          last edited by ChuckLasher

                                          @mloiterman

                                          @lnguyen and I are working together on this project.
                                          I have the x710-T2L,

                                          I compiled the 1.12.16 drivers in my FreeBSD 12.2 VM and got us to this point.

                                          I have flow control which works but the speed isn't showing. (dev.ixl.1.fc=3)
                                          I notice that it takes a bit for the IPv6 addresses to populate on startup. This is new behavior.

                                          What are we missing here?

                                          Untitled.png

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            mloiterman @ChuckLasher
                                            last edited by

                                            @chucklasher

                                            I cannot say what might be causing your issues, but I can tell you that I enabled Flow Control on the LAN switch ports and enabled full Flow Control on the LAN port on the X710 card. I had Flow Control disabled on the WAN port of the X710 card.

                                            My understanding is the Flow Control is negotiated and must be active on both sides of the connection.

                                            This whole thing is still a bit of a mystery to me and it’s not really clear why it’s needed. I suspect it may be partially rooted in the fact that my switches, HP 2920 48 port with PoE+ are 1Gbs switches with a 10Gbs add in cards. NBASE-T is a newer standard and there maybe bugs or issues like this that are triggered when you have a mixed environment. That’s only speculation from me, however.

                                            Please let me know what you find because I would like to eventually disable Flow Control.

                                            C L 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.