Skip to content
Snippets Groups Projects
  1. Jan 18, 2021
    • Stephan de Wit's avatar
      Fix EEPROM read of SFPP modules · 0857355c
      Stephan de Wit authored
      20.7.8
      0857355c
    • Stephan de Wit's avatar
      axgbe: add link issue workaround · b8d01ebe
      Stephan de Wit authored
      b8d01ebe
    • Vincenzo Maffione's avatar
      axgbe: driver changes for netmap support · 76891007
      Vincenzo Maffione authored
      AMD 10GbE hardware is designed to have two buffers per receive descriptor to
      support split header feature. For this purpose, the driver was designed to use
      2 iflib freelists per receive queue. So, that buffers from 2 freelists are used
      to refill an entry in the receive descriptor. The current design holds good
      with regular data traffic.
      
      But, when netmap comes into play, the current design will not fit in. The
      current netmap interfaces and netmap implementation in iflib doesn't seem
      to accomodate the design of 2 freelists per receive queue. So, exercising
      Netmap capability with inbuilt tools like bridge, pkt-gen doesn't work with
      the 2 freelists driver design.
      
      So, the driver design is changed to accomodate the current netmap interfaces
      and netmap implementation in iflib by using single freelist per receive queue
      approach when Netmap capability is exercised without disturbing the current
      2 freelists approach.
      The dev.ax.sph_enable tunable can be set to 0 to configure the single
      free list mode.
      
      Thanks to Stephan Dewt for his Initial set of code changes for the stated
      problem.
      
      Submitted by:	rajesh1.kumar_amd.com
      Approved by:	vmaffione
      MFC after:	3 weeks
      Differential Revision:	https://reviews.freebsd.org/D27797
      76891007
    • Emmanuel Vadot's avatar
      10Gigabit Ethernet driver for AMD SoC · 98408909
      Emmanuel Vadot authored
      This patch has the driver for 10Gigabit Ethernet controller in AMD
      SoC. This driver is written compatible to the Iflib framework. The
      existing driver is for the old version of hardware. The submitted
      driver here is for the recent versions of the hardware where the Ethernet
      controller is PCI-E based.
      
      Submitted by:	Rajesh Kumar <rajesh1.kumar@amd.com>
      MFC after:	1 month
      Relnotes:	yes
      Differential Revision:	https://reviews.freebsd.org/D25793
      98408909
  2. Jan 14, 2021
    • Bjoern A. Zeeb's avatar
      MFC r358427: initialize oifp to avoid bogus results/panics in edge cases · be28ac27
      Bjoern A. Zeeb authored
        In certain cases (probably not during normal operation but observed in
        the lab during development) ip6_ouput() could return without error
        and ifpp (&oifp) not updated.
        Given oifp was never initialized we would take the later branch
        as oifp was not NULL, and when calling icmp6_ifstat_inc() we would
        panic dereferencing a garbage pointer.
        For code stability initialize oifp to NULL before first use to always
        have a deterministic value and not rely on a called function to behave
        and always and for ever do the work for us as we hope for.
      
        Sponsored by:	Netflix
      be28ac27
  3. Jan 13, 2021
    • markj's avatar
      MFC r367596: · c26eefcc
      markj authored
      iflib: Free full mbuf chains when draining transmit queues
      c26eefcc
  4. Jan 05, 2021
  5. Dec 13, 2020
  6. Dec 12, 2020
  7. Dec 11, 2020
  8. Dec 04, 2020
    • vmaffione's avatar
      MFC r364341 · 74f1f081
      vmaffione authored
      netmap: fix parsing of legacy nmr->nr_ringid
      
      Code was checking for NETMAP_{SW,HW}_RING in req->nr_ringid which
      had already been masked by NETMAP_RING_MASK. Therefore, the comparisons
      always failed and set NR_REG_ALL_NIC. Check against the original nmr
      structure.
      
      Submitted by:   bpoole@packetforensics.com
      Reported by:    bpoole@packetforensics.com
      Reviewed by:    giuseppe.lettieri@unipi.it
      Approved by:    vmaffione
      20.7.6
      74f1f081
    • vmaffione's avatar
      MFC r366952 · 9a9451c7
      vmaffione authored
      netmap: fix mutex double unlock bug
      
      https://github.com/luigirizzo/netmap/pull/733
      
      Submitted by:    brian90013
      9a9451c7
    • vmaffione's avatar
      MFC r353775 · 2821512c
      vmaffione authored
      netmap: minor misc improvements
      
       - use ring->head rather than ring->cur in lb(8)
       - use strlcat() rather than strncat()
       - fix bandwidth computation in pkt-gen(8)
      2821512c
    • vmaffione's avatar
      MFC r357663 · efbc3316
      vmaffione authored
      netmap: improve netmap(4) and vale(4) man pages
      
      Clean up obsolete sysctl descriptions and add missing ones.
      
      PR:             243838
      Reviewed by:    bcr
      Differential Revision:  https://reviews.freebsd.org/D23546
      efbc3316
  9. Dec 03, 2020
  10. Nov 27, 2020
    • bz's avatar
      MFC r364018: · ef0c95d5
      bz authored
        IPV6_PKTINFO support for v4-mapped IPv6 sockets
      
        When using v4-mapped IPv6 sockets with IPV6_PKTINFO we do not
        respect the given v4-mapped src address on the IPv4 socket.
        Implement the needed functionality. This allows single-socket
        UDP applications (such as OpenVPN) to work better on FreeBSD.
      
        Requested by:	Gert Doering (gert greenie.net), pfsense
        Tested by:	Gert Doering (gert greenie.net)
      ef0c95d5
  11. Sep 28, 2020
    • Shawn Webb's avatar
      HBSD: Disable security.bsd.unprivileged_proc_debug by default · 6e16e28f
      Shawn Webb authored
      
      Now that the security.bsd.unprivileged_proc_debug is set on a per-jail
      basis, we need to modify how we're disabling it by default.
      
      Signed-off-by: default avatarShawn Webb <shawn.webb@hardenedbsd.org>
      Sponsored-by:	G2, Inc
      MFC-to:		12-STABLE
      MFC-to:		11-STABLE
      (cherry picked from commit 5584574a90044fe976cbf2210f2f8bfb5722ea08)
      Signed-off-by: default avatarShawn Webb <shawn.webb@hardenedbsd.org>
      (cherry picked from commit 58bbb3e9433204270f8d1135a95d475ea4f65755)
      Signed-off-by: default avatarShawn Webb <shawn.webb@hardenedbsd.org>
      (cherry picked from commit cf37e458bbf5ffba37a3e74f2bd560d29541ac5b)
      Signed-off-by: default avatarShawn Webb <shawn.webb@hardenedbsd.org>
      (cherry picked from commit 8f81f74fc53b3f7ce55f275dbd94d3d1b966d3e1)
      Signed-off-by: default avatarShawn Webb <shawn.webb@hardenedbsd.org>
      20.7.4
      6e16e28f
    • vmaffione's avatar
      MFC r364165 · d4cb253e
      vmaffione authored
      iflib: netmap: improve rxsync to support IFLIB_HAS_RXCQ
      
      For drivers with IFLIB_HAS_RXCQ set, there is a separate completion
      queue. In this case, the netmap rxsync routine needs to update
      rxq->ifr_cq_cidx in the same way it is updated by iflib_rxeof().
      This improves the situation for vmx(4) and bnxt(4) drivers, which
      use iflib and have the IFLIB_HAS_RXCQ bit set.
      
      PR:     248494
      d4cb253e
    • vmaffione's avatar
      MFC r364164 · d3ef7810
      vmaffione authored
      iflib: refactor netmap_fl_refill and fix off-by-one issue
      
      First, fix the initialization of the fl->ifl_rxd_idxs array,
      which was affected by an off-by-one bug.
      Once there, refactor the function to use better names for
      local variables, optimize the variable assignments, and
      merge the bus_dmamap_sync() inner loop with the outer one.
      
      PR:     248494
      d3ef7810
    • vmaffione's avatar
      MFC r363997 · ccf54b1a
      vmaffione authored
      iflib: netmap: drop redundant check
      
      The validity of head is already checked by nm_rxsync_prologue().
      ccf54b1a
    • vmaffione's avatar
      MFC r363996 · 3034c572
      vmaffione authored
      iflib: netmap: don't increment ifl_cidx on the wrong free list
      
      Netmap only uses free list 0 to keep it consistent with its
      one-to-one mapping between each netmap ring and a device RX
      (or TX) queue.
      However, the current iflib_netmap_rxsync() routine was
      mistakenly updating the ifl_cidx field of both free lists.
      
      PR:           248494
      3034c572
    • vmaffione's avatar
      MFC r356704 · 7ca38502
      vmaffione authored
      netmap: disable passthrough with no hypervisor support
      
      The netmap passthrough subsystem requires proper support in the
      hypervisor. In particular, two PCI device ids (from the Red Hat
      PCI vendor id 0x1b36) need to be assigned to the two netmap
      virtual devices. We then disable these devices until the ids have
      not been assigned, in order to avoid conflicts with other
      virtual devices emulated by upstream QEMU.
      
      PR:     241774
      7ca38502
    • erj's avatar
      MFC r362063: em(4): Always reinit interface when adding/removing VLAN · 8fe88831
      erj authored
      PR:		240818
      Sponsored by:	Intel Corporation
      8fe88831
    • erj's avatar
      MFC r360398 and r360902 · 9b41a867
      erj authored
      These commits introduce a new iflib device-dependent method and
      implements that method in the Intel ethernet network drivers;
      this method tells iflib if the network interface needs to be
      restarted when certain events happen.
      
      This fixes several issues that occur when VLANs are registered
      or unregistered with the network interface.
      
      PR:		240818, 241785
      Sponsored by:	Intel Corporation
      9b41a867
    • erj's avatar
      MFC isc_pause_frame field fixes to Intel ethernet drivers · 3896de13
      erj authored
      This MFC includes: r353656, r353657, r353658, and r353661
      
      Sponsored by:	Intel Corporation
      3896de13