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

    Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5

    Scheduled Pinned Locked Moved Hardware
    15 Posts 4 Posters 1.6k 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.
    • N
      NRgia
      last edited by

      I have compiled an if_ix.ko NIC driver for Intel X553 chipset in order to replace the older version of pfSense one.

      I used a VM with FreeBsd 11.3-STABLE:
      freebsd version.png

      I replaced the old .ko in /boot/kernel and I have edited the loader.conf.local with the follwing line:

      if_ix_load="YES"

      Also I tried to put the module in /boot/modules/ and edit the loader.conf.local with the following line:

      if_ix_updated_load="YES"

      In both cases the .ko is not loaded, although the NICs are still working

      kldstat output:
      kldstat.png

      Also when I try to load it manually i get the following from kldload:
      kldload.png

      dmesg relevant output:
      dmesg.png

      ASFAIK this means the version of my FreeBSD is not the same as pfSense one.

      What version of FreeBSD should I use in order to be able to be on the same version, in order to compile ?

      pfSense is using a version from 24th of March:
      pfSense version.png

      Any help is appreciated, thanks

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

        Does it load in the box you compiled it on?

        At first glance that looks like the correct kernel though.

        Steve

        N 1 Reply Last reply Reply Quote 0
        • N
          NRgia @stephenw10
          last edited by NRgia

          @stephenw10 said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

          Does it load in the box you compiled it on?

          At first glance that looks like the correct kernel though.

          Steve

          I tried it, and it loads:
          if_ix.png

          The driver was downloaded from here:
          https://downloadcenter.intel.com/download/14688/Intel-Network-Adapters-Driver-for-PCIe-10-Gigabit-Network-Connections-Under-FreeBSD-?product=88207

          and then compiled

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

            Hmm, this is the first release that was not based on a FreeBSD release version directly. I have built kernel modules for other versions but clearly there is something different here.
            However I note the alternative re driver module seems to be working: https://forum.netgate.com/post/900628
            They don't say precisely but it looks like that was built against 11.3 release. You might ask there.

            Steve

            1 Reply Last reply Reply Quote 0
            • T
              TheNarc
              last edited by

              I can confirm that I built the Realtek driver using the official FreeBSD 11.3-RELEASE VM image, and it loads and works.

              N 1 Reply Last reply Reply Quote 0
              • N
                NRgia @TheNarc
                last edited by NRgia

                @TheNarc said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

                I can confirm that I built the Realtek driver using the official FreeBSD 11.3-RELEASE VM image, and it loads and works.

                Hi @TheNarc
                Which one exactly 11.3-Release or 11.3-Stable. Because from what I see pfSense was built with stable:
                2.4.5-RELEASE (amd64)
                built on Tue Mar 24 15:25:50 EDT 2020
                FreeBSD 11.3-STABLE
                Hence my VM machine on which I've compiled is the 11.3-Stable version. And I think maybe the build date also matters?

                Thanks

                T 1 Reply Last reply Reply Quote 0
                • T
                  TheNarc @NRgia
                  last edited by

                  @NRgia I apologize, you're correct; I should never trust my memory. I went back and checked and it was the stable image that I used:
                  http://ftp.freebsd.org/pub/FreeBSD/snapshots/VM-IMAGES/11.3-STABLE/amd64/Latest/FreeBSD-11.3-STABLE-amd64.vhd.xz

                  N 1 Reply Last reply Reply Quote 0
                  • N
                    NRgia @TheNarc
                    last edited by

                    @TheNarc said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

                    http://ftp.freebsd.org/pub/FreeBSD/snapshots/VM-IMAGES/11.3-STABLE/amd64/Latest/FreeBSD-11.3-STABLE-amd64.vhd.xz

                    I'll try with the one you provided and post a feedback afterwards.
                    Thanks

                    1 Reply Last reply Reply Quote 0
                    • N
                      NRgia
                      last edited by NRgia

                      @TheNarc I've remembered why I didn't used an already created VM, it lacked the kernel source.

                      I got this when I try to compile:

                      source.png

                      Do you know which src.txz you used for usr/src/ or which one to fetch?

                      Thanks

                      T 1 Reply Last reply Reply Quote 0
                      • T
                        TheNarc @NRgia
                        last edited by

                        @NRgia Just checked, and I did use the 11.3-RELEASE source, which adds to the confusion I guess. But it did work for me. Plus I don't see the 11.3-STABLE source, at least on this FTP server:
                        ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/11.3-RELEASE/src.txz

                        jimpJ N 2 Replies Last reply Reply Quote 1
                        • jimpJ
                          jimp Rebel Alliance Developer Netgate @TheNarc
                          last edited by

                          @TheNarc said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

                          @NRgia Just checked, and I did use the 11.3-RELEASE source, which adds to the confusion I guess. But it did work for me. Plus I don't see the 11.3-STABLE source, at least on this FTP server:
                          ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/11.3-RELEASE/src.txz

                          The source for STABLE is always changing. You'd have to check out a specific commit from svn or git.

                          As you can see on https://docs.netgate.com/pfsense/en/latest/releases/versions-of-pfsense-and-freebsd.html#id1 we have listed the specific point on 11-STABLE used for 2.4.5.

                          Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                          Need help fast? Netgate Global Support!

                          Do not Chat/PM for help!

                          N 1 Reply Last reply Reply Quote 1
                          • N
                            NRgia @TheNarc
                            last edited by

                            @TheNarc said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

                            @NRgia Just checked, and I did use the 11.3-RELEASE source, which adds to the confusion I guess. But it did work for me. Plus I don't see the 11.3-STABLE source, at least on this FTP server:
                            ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/11.3-RELEASE/src.txz

                            There is for stable also:
                            https://download.freebsd.org/ftp/snapshots/amd64/11.3-STABLE/src.txz

                            1 Reply Last reply Reply Quote 0
                            • N
                              NRgia @jimp
                              last edited by

                              @jimp said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

                              @TheNarc said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

                              @NRgia Just checked, and I did use the 11.3-RELEASE source, which adds to the confusion I guess. But it did work for me. Plus I don't see the 11.3-STABLE source, at least on this FTP server:
                              ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/11.3-RELEASE/src.txz

                              The source for STABLE is always changing. You'd have to check out a specific commit from svn or git.

                              As you can see on https://docs.netgate.com/pfsense/en/latest/releases/versions-of-pfsense-and-freebsd.html#id1 we have listed the specific point on 11-STABLE used for 2.4.5.

                              And how can I take the exact one?

                              1 Reply Last reply Reply Quote 0
                              • T
                                TheNarc
                                last edited by

                                The stable/11 branch is here:
                                https://github.com/freebsd/freebsd/commits/stable/11
                                But I've been unsuccessful in linking r357046 to a commit hash, which is not entirely surprising as I'm not too well versed in git. I thought github's search would be able to find it, but I haven't had luck yet. I'll let you know if I locate it though.

                                N 1 Reply Last reply Reply Quote 1
                                • N
                                  NRgia @TheNarc
                                  last edited by NRgia

                                  @TheNarc said in Cannot load a compiled .ko Intel NIC driver to pfSense 2.4.5:

                                  The stable/11 branch is here:
                                  https://github.com/freebsd/freebsd/commits/stable/11
                                  But I've been unsuccessful in linking r357046 to a commit hash, which is not entirely surprising as I'm not too well versed in git. I thought github's search would be able to find it, but I haven't had luck yet. I'll let you know if I locate it though.

                                  It will be good to know, but I managed to compile it as follows:

                                  1. The VM image didn't had enough space, so I've created a VM from 11.3-STABLE ISO
                                  2. Installed subversion (svn)
                                  3. Used the following:
                                  svn checkout https://svn.FreeBSD.org/base/release/11.3.0 /usr/src/
                                  

                                  to download the source - So you were right using Release SRC on STABLE. I still don't understand why it works, but I'm glad it did.

                                  What I saw in the FreeBSD svn manual, is that we can use svn -r (and the number of revision), in order to update the source to exact revision. But it didn't worked for me, or it's a more complex syntax, or I don't have access to the repository. If you find out please let me know. We will need it when pfSense based on FreeBSD 12 will be released :)

                                  In the end I would like to thank you, for all your tips @TheNarc , @stephenw10 and @jimp . It worked 👍

                                  1 Reply Last reply Reply Quote 1
                                  • First post
                                    Last post
                                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.