> 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

Reply via email to