HomeFreeBSD

Remove freelist contiguous-indexes assertion from rxd_frag_to_sd()

Description

Remove freelist contiguous-indexes assertion from rxd_frag_to_sd()

The vmx driver is an example of an iflib driver that might report
packets using non-contiguous descriptors (with unused descriptors
either between received packets or between the fragments of a received
packet), so this assertion needs to be removed.

For such drivers, the freelist producer and consumer indexes don't
relate directly to driver ring slots (the driver deals directly with
freelist buffer indexes supplied by iflib during refill, and reports
them with each fragment during packet reception), but do continue to
be used by iflib for accounting, such as determining the number of
ring slots that are refillable.

PR: 243126, 243392, 240628
Reported by: avg, alexandr.oleynikov@gmail.com, Harald Schmalzbauer
Reviewed by: gallatin
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D23946

Details

Provenance
pkelseyAuthored on
Reviewer
gallatin
Differential Revision
D23946: Remove freelist contiguous-indexes assertion from rxd_frag_to_sd()
Parents
rS358996: Fix iflib zero-length fragment handling
Branches
Unknown
Tags
Unknown