> Does this help? > mbuhl > Index: dev/pci/if_igc.c > =================================================================== > RCS file: /cvs/src/sys/dev/pci/if_igc.c,v > retrieving revision 1.9 > diff -u -p -r1.9 if_igc.c > --- dev/pci/if_igc.c 2 Jun 2022 07:41:17 -0000 1.9 > +++ dev/pci/if_igc.c 8 Nov 2022 10:35:39 -0000 > @@ -978,7 +978,7 @@ igc_start(struct ifqueue *ifq) > mask = sc->num_tx_desc - 1; > > for (;;) { > - if (free <= IGC_MAX_SCATTER) { > + if (free <= IGC_MAX_SCATTER + 1) { > ifq_set_oactive(ifq); > break; > } > @@ -1005,6 +1005,7 @@ igc_start(struct ifqueue *ifq) > /* Consume the first descriptor */ > prod++; > prod &= mask; > + free--; > } > > for (i = 0; i < map->dm_nsegs; i++) {
i wouldn't say it helps. it grew by a hundred(from ~550 to ~650) in four hours. at the same time, there is no network load. but it is necessary, of course, to observe longer. 654 mbufs in use: 591 mbufs allocated to data 52 mbufs allocated to packet headers 11 mbufs allocated to socket names and addresses 255/320 mbuf 2048 byte clusters in use (current/peak) 311/450 mbuf 2112 byte clusters in use (current/peak) 0/48 mbuf 4096 byte clusters in use (current/peak) 16/32 mbuf 8192 byte clusters in use (current/peak) 0/14 mbuf 9216 byte clusters in use (current/peak) 0/10 mbuf 12288 byte clusters in use (current/peak) 0/8 mbuf 16384 byte clusters in use (current/peak) 0/16 mbuf 65536 byte clusters in use (current/peak) 3656/3656/1048576 Kbytes allocated to network (current/peak/max) 0 requests for memory denied 0 requests for memory delayed 0 calls to protocol drain routines