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

    Disable hardware TCP segmentation offload

    Scheduled Pinned Locked Moved General pfSense Questions
    4 Posts 2 Posters 1.4k 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.
    • G
      gauthig
      last edited by

      This box is checked but sysctl shows net.inet.tcp.tso: 1
      So as per https://docs.netgate.com/pfsense/en/latest/hardware/tune.html#tso-lro I add net.inet.tcp.tso="0" to /boot/loader.conf.local and reboot, same results. net.inet.tcp.tso: 1 I add it to the tunables and same results.

      Where else could this setting be forced

      ESXI 7
      VMXNET3 guest driver, vmware tools installed,
      PF 22.05

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

        @gauthig said in Disable hardware TCP segmentation offload:

        https://docs.netgate.com/pfsense/en/latest/hardware/tune.html#tso-lro

        Hmm, that maybe out of date. 'net.inet.tcp.tso' is a sysctl as mentioned, not a loader variable (some things can be set in both):

        [22.05-RELEASE][admin@4100-2.stevew.lan]/root: sysctl net.inet.tcp.tso
        net.inet.tcp.tso: 1
        [22.05-RELEASE][admin@4100-2.stevew.lan]/root: sysctl net.inet.tcp.tso=0
        net.inet.tcp.tso: 1 -> 0
        [22.05-RELEASE][admin@4100-2.stevew.lan]/root: sysctl net.inet.tcp.tso
        net.inet.tcp.tso: 0
        

        So add it as a System Tunable.

        However even with that enabled globally you should see it disabled for the NICs:

        ix3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        	options=e138bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6>
        	capabilities=f53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP,RXCSUM_IPV6,TXCSUM_IPV6>
        

        Steve

        G 1 Reply Last reply Reply Quote 0
        • G
          gauthig @stephenw10
          last edited by

          @stephenw10 Thanks for the hint, it could be set anywhere. So I looked at all the loader configs that I do not touch and found it in loader.conf

          So I removed it from there, the tunables, and the file I normally edited loader.conf.local and just left the check mark on the advanced networking page. It worked.

          But a whole new question raised. I do not touch the loader.conf file and it seems very strange to my especially since it had 12 duplicate entries. What could have done this? Only thing I can think of is two years of upgraded versions and maybe I need a fresh install.

          Here it is:
          kern.cam.boot_delay=10000
          kern.ipc.nmbclusters="1000000"
          kern.ipc.nmbjumbop="524288"
          kern.ipc.nmbjumbo9="524288"
          opensolaris_load="YES"
          zfs_load="YES"
          kern.geom.label.gptid.enable="0"
          kern.geom.label.disk_ident.enable="0"
          kern.geom.label.disk_ident.enable="0"
          kern.geom.label.gptid.enable="0"
          opensolaris_load="YES"
          zfs_load="YES"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          net.link.ifqmaxlen="128"
          autoboot_delay="3"
          vm.pmap.pti="0"
          net.link.ifqmaxlen="128"

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

            Mmm, it's a known issue. It's ugly but harmless.

            You shouldn't ever manually edit the loader.conf file normally but you can remove the duplicates.
            Any loader value you need to set or unset should always be put in loader.conf.local.

            Steve

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