This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM4372: UDP data loss

Guru 10225 points

Part Number: AM4372
Other Parts Discussed in Thread: AM3358

Hi Sitara support Team,

Regarding UDP communication of "20KB data TX/RX",
it runs simultaneously on LAN 2ch, and there is the packet loss occurs immediately.
When it runs on LAN 1ch, there is no the packet loss.

Here is the log of ethtool, it shows that “Rx Start of Frame Overruns” was counted up.

root@am437x-evm:/mnt/sd2/home/avaldata# /mnt/sd1/ethtool -S eth1
NIC statistics:
     Good Rx Frames: 138811
     Broadcast Rx Frames: 259
     Multicast Rx Frames: 233
     Pause Rx Frames: 0
     Rx CRC Errors: 0
     Rx Align/Code Errors: 0
     Oversize Rx Frames: 0
     Rx Jabbers: 0
     Undersize (Short) Rx Frames: 0
     Rx Fragments: 0
     Rx Octets: 207682493
     Good Tx Frames: 138401
     Broadcast Tx Frames: 112
     Multicast Tx Frames: 26
     Pause Tx Frames: 0
     Deferred Tx Frames: 0
     Collisions: 0
     Single Collision Tx Frames: 0
     Multiple Collision Tx Frames: 0
     Excessive Collisions: 0
     Late Collisions: 0
     Tx Underrun: 0
     Carrier Sense Errors: 0
     Tx Octets: 207515027
     Rx + Tx 64 Octet Frames: 135
     Rx + Tx 65-127 Octet Frames: 222
     Rx + Tx 128-255 Octet Frames: 66
     Rx + Tx 256-511 Octet Frames: 233
     Rx + Tx 512-1023 Octet Frames: 196
     Rx + Tx 1024-Up Octet Frames: 276360
     Net Octets: 415197520
     Rx Start of Frame Overruns: 3
     Rx Middle of Frame Overruns: 0
     Rx DMA Overruns: 0
     Rx DMA chan 0: head_enqueue: 1
     Rx DMA chan 0: tail_enqueue: 138830
     Rx DMA chan 0: pad_enqueue: 0
     Rx DMA chan 0: misqueued: 0
     Rx DMA chan 0: desc_alloc_fail: 0
     Rx DMA chan 0: pad_alloc_fail: 0
     Rx DMA chan 0: runt_receive_buf: 0
     Rx DMA chan 0: runt_transmit_bu: 0
     Rx DMA chan 0: empty_dequeue: 0
     Rx DMA chan 0: busy_dequeue: 10134
     Rx DMA chan 0: good_dequeue: 138575
     Rx DMA chan 0: requeue: 0
     Rx DMA chan 0: teardown_dequeue: 0
     Tx DMA chan 0: head_enqueue: 13932
     Tx DMA chan 0: tail_enqueue: 124469
     Tx DMA chan 0: pad_enqueue: 0
     Tx DMA chan 0: misqueued: 65287
     Tx DMA chan 0: desc_alloc_fail: 0
     Tx DMA chan 0: pad_alloc_fail: 0
     Tx DMA chan 0: runt_receive_buf: 0
     Tx DMA chan 0: runt_transmit_bu: 64
     Tx DMA chan 0: empty_dequeue: 13932
     Tx DMA chan 0: busy_dequeue: 117301
     Tx DMA chan 0: good_dequeue: 138401
     Tx DMA chan 0: requeue: 46439
     Tx DMA chan 0: teardown_dequeue: 0

After it has increased the buffer referring to the below site,
it does not improve.

http://wiki.tiprocessors.com/index.php/Reducing_UDP_receive_packet_loss_on_AM3x/4x/5x_Class_devices

cat /proc/sys/net/core/rmem_max
180224
cat /proc/sys/net/core/rmem_default
180224

sysctl -w net.core.netdev_max_backlog=20000
sysctl -w net.ipv4.udp_mem='17565 87380 50331648'
sysctl -w net.core.rmem_max=50331648
sysctl -w net.core.rmem_default=50331648
sysctl -w net.ipv4.route.flush=1

cat /proc/sys/net/core/rmem_max
50331648
cat /proc/sys/net/core/rmem_default
50331648


cat /proc/net/snmp
Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagrams InUnknownProtos InDiscards InDelivers OutRequests OutDiscards OutNoRoutes ReasmTimeout ReasmReqds ReasmOKs ReasmFails FragOKs FragFails FragCreates
Ip: 2 64 101640 0 2 0 0 0 7415 7347 0 0 1 101470 7247 1 7249 0 101486
Icmp: InMsgs InErrors InCsumErrors InDestUnreachs InTimeExcds InParmProbs InSrcQuenchs InRedirects InEchos InEchoReps InTimestamps InTimestampReps InAddrMasks InAddrMaskReps OutMsgs OutErrors OutDestUnreachs OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects OutEchos OutEchoReps OutTimestamps OutTimestampReps OutAddrMasks OutAddrMaskReps
Icmp: 3 0 0 1 0 0 0 0 0 2 0 0 0 0 3 0 0 1 0 0 0 2 0 0 0 0 0
IcmpMsg: InType0 InType3 OutType8 OutType11
IcmpMsg: 2 1 2 1
Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts InCsumErrors
Tcp: 1 200 120000 -1 0 1 0 0 1 99 93 0 0 0 0
Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
Udp: 7247 0 0 7251 0 0 0 66
UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
UdpLite: 0 0 0 0 0 0 0 0


ethtool -S eth0
NIC statistics:
     Good Rx Frames: 101673
     Broadcast Rx Frames: 77
     Multicast Rx Frames: 17
     Pause Rx Frames: 0
     Rx CRC Errors: 0
     Rx Align/Code Errors: 0
     Oversize Rx Frames: 0
     Rx Jabbers: 0
     Undersize (Short) Rx Frames: 0
     Rx Fragments: 0
     Rx Octets: 152377162
     Good Tx Frames: 101631
     Broadcast Tx Frames: 23
     Multicast Tx Frames: 22
     Pause Tx Frames: 0
     Deferred Tx Frames: 0
     Collisions: 0
     Single Collision Tx Frames: 0
     Multiple Collision Tx Frames: 0
     Excessive Collisions: 0
     Late Collisions: 0
     Tx Underrun: 0
     Carrier Sense Errors: 0
     Tx Octets: 152398931
     Rx + Tx 64 Octet Frames: 100
     Rx + Tx 65-127 Octet Frames: 118
     Rx + Tx 128-255 Octet Frames: 85
     Rx + Tx 256-511 Octet Frames: 41
     Rx + Tx 512-1023 Octet Frames: 2
     Rx + Tx 1024-Up Octet Frames: 202958
     Net Octets: 304776093
     Rx Start of Frame Overruns: 2
     Rx Middle of Frame Overruns: 0
     Rx DMA Overruns: 0
     Rx DMA chan 0: head_enqueue: 1
     Rx DMA chan 0: tail_enqueue: 103701
     Rx DMA chan 0: pad_enqueue: 0
     Rx DMA chan 0: misqueued: 0
     Rx DMA chan 0: desc_alloc_fail: 0
     Rx DMA chan 0: pad_alloc_fail: 0
     Rx DMA chan 0: runt_receive_buf: 0
     Rx DMA chan 0: runt_transmit_bu: 0
     Rx DMA chan 0: empty_dequeue: 0
     Rx DMA chan 0: busy_dequeue: 7378
     Rx DMA chan 0: good_dequeue: 101654
     Rx DMA chan 0: requeue: 0
     Rx DMA chan 0: teardown_dequeue: 0
     Tx DMA chan 0: head_enqueue: 12966
     Tx DMA chan 0: tail_enqueue: 88665
     Tx DMA chan 0: pad_enqueue: 0
     Tx DMA chan 0: misqueued: 59333
     Tx DMA chan 0: desc_alloc_fail: 0
     Tx DMA chan 0: pad_alloc_fail: 0
     Tx DMA chan 0: runt_receive_buf: 0
     Tx DMA chan 0: runt_transmit_bu: 16
     Tx DMA chan 0: empty_dequeue: 12966
     Tx DMA chan 0: busy_dequeue: 82284
     Tx DMA chan 0: good_dequeue: 101631
     Tx DMA chan 0: requeue: 17455
     Tx DMA chan 0: teardown_dequeue: 0

ethtool -S eth1
NIC statistics:
     Good Rx Frames: 101675
     Broadcast Rx Frames: 79
     Multicast Rx Frames: 17
     Pause Rx Frames: 0
     Rx CRC Errors: 0
     Rx Align/Code Errors: 0
     Oversize Rx Frames: 0
     Rx Jabbers: 0
     Undersize (Short) Rx Frames: 0
     Rx Fragments: 0
     Rx Octets: 152377854
     Good Tx Frames: 101633
     Broadcast Tx Frames: 25
     Multicast Tx Frames: 22
     Pause Tx Frames: 0
     Deferred Tx Frames: 0
     Collisions: 0
     Single Collision Tx Frames: 0
     Multiple Collision Tx Frames: 0
     Excessive Collisions: 0
     Late Collisions: 0
     Tx Underrun: 0
     Carrier Sense Errors: 0
     Tx Octets: 152399623
     Rx + Tx 64 Octet Frames: 100
     Rx + Tx 65-127 Octet Frames: 118
     Rx + Tx 128-255 Octet Frames: 85
     Rx + Tx 256-511 Octet Frames: 45
     Rx + Tx 512-1023 Octet Frames: 2
     Rx + Tx 1024-Up Octet Frames: 202958
     Net Octets: 304777477
     Rx Start of Frame Overruns: 2
     Rx Middle of Frame Overruns: 0
     Rx DMA Overruns: 0
     Rx DMA chan 0: head_enqueue: 1
     Rx DMA chan 0: tail_enqueue: 103703
     Rx DMA chan 0: pad_enqueue: 0
     Rx DMA chan 0: misqueued: 0
     Rx DMA chan 0: desc_alloc_fail: 0
     Rx DMA chan 0: pad_alloc_fail: 0
     Rx DMA chan 0: runt_receive_buf: 0
     Rx DMA chan 0: runt_transmit_bu: 0
     Rx DMA chan 0: empty_dequeue: 0
     Rx DMA chan 0: busy_dequeue: 7380
     Rx DMA chan 0: good_dequeue: 101656
     Rx DMA chan 0: requeue: 0
     Rx DMA chan 0: teardown_dequeue: 0
     Tx DMA chan 0: head_enqueue: 12968
     Tx DMA chan 0: tail_enqueue: 88665
     Tx DMA chan 0: pad_enqueue: 0
     Tx DMA chan 0: misqueued: 59333
     Tx DMA chan 0: desc_alloc_fail: 0
     Tx DMA chan 0: pad_alloc_fail: 0
     Tx DMA chan 0: runt_receive_buf: 0
     Tx DMA chan 0: runt_transmit_bu: 16
     Tx DMA chan 0: empty_dequeue: 12968
     Tx DMA chan 0: busy_dequeue: 82284
     Tx DMA chan 0: good_dequeue: 101633
     Tx DMA chan 0: requeue: 17455
     Tx DMA chan 0: teardown_dequeue: 0
     

cat /proc/sys/net/core/rmem_max
180224
cat /proc/sys/net/core/rmem_default
180224

sysctl -w net.core.netdev_max_backlog=20000
sysctl -w net.ipv4.udp_mem='17565 87380 50331648'
sysctl -w net.core.rmem_max=50331648
sysctl -w net.core.rmem_default=50331648
sysctl -w net.ipv4.route.flush=1

cat /proc/sys/net/core/rmem_max
50331648
cat /proc/sys/net/core/rmem_default
50331648


cat /proc/net/snmp
Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagrams InUnknownProtos InDiscards InDelivers OutRequests OutDiscards OutNoRoutes ReasmTimeout ReasmReqds ReasmOKs ReasmFails FragOKs FragFails FragCreates
Ip: 2 64 6071342 0 36 0 0 0 434116 433804 0 0 0 6070820 433630 0 433632 0 6070848
Icmp: InMsgs InErrors InCsumErrors InDestUnreachs InTimeExcds InParmProbs InSrcQuenchs InRedirects InEchos InEchoReps InTimestamps InTimestampReps InAddrMasks InAddrMaskReps OutMsgs OutErrors OutDestUnreachs OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects OutEchos OutEchoReps OutTimestamps OutTimestampReps OutAddrMasks OutAddrMaskReps
Icmp: 3 0 0 1 0 0 0 0 0 2 0 0 0 0 2 0 0 0 0 0 0 2 0 0 0 0 0
IcmpMsg: InType0 InType3 OutType8
IcmpMsg: 2 1 2
Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts InCsumErrors
Tcp: 1 200 120000 -1 0 1 0 0 1 296 168 0 0 0 0
Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
Udp: 433630 0 0 433634 0 0 0 187
UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
UdpLite: 0 0 0 0 0 0 0 0


ethtool -S eth0
NIC statistics:
     Good Rx Frames: 5162432
     Broadcast Rx Frames: 213
     Multicast Rx Frames: 35
     Pause Rx Frames: 0
     Rx CRC Errors: 0
     Rx Align/Code Errors: 0
     Oversize Rx Frames: 0
     Rx Jabbers: 0
     Undersize (Short) Rx Frames: 0
     Rx Fragments: 0
     Rx Octets: 3455344626
     Good Tx Frames: 5162172
     Broadcast Tx Frames: 79
     Multicast Tx Frames: 26
     Pause Tx Frames: 0
     Deferred Tx Frames: 0
     Collisions: 0
     Single Collision Tx Frames: 0
     Multiple Collision Tx Frames: 0
     Excessive Collisions: 0
     Late Collisions: 0
     Tx Underrun: 0
     Carrier Sense Errors: 0
     Tx Octets: 3455316695
     Rx + Tx 64 Octet Frames: 266
     Rx + Tx 65-127 Octet Frames: 294
     Rx + Tx 128-255 Octet Frames: 60
     Rx + Tx 256-511 Octet Frames: 159
     Rx + Tx 512-1023 Octet Frames: 0
     Rx + Tx 1024-Up Octet Frames: 10323825
     Net Octets: 2615694025
     Rx Start of Frame Overruns: 0
     Rx Middle of Frame Overruns: 0
     Rx DMA Overruns: 0
     Rx DMA chan 0: head_enqueue: 1
     Rx DMA chan 0: tail_enqueue: 5164444
     Rx DMA chan 0: pad_enqueue: 0
     Rx DMA chan 0: misqueued: 0
     Rx DMA chan 0: desc_alloc_fail: 0
     Rx DMA chan 0: pad_alloc_fail: 0
     Rx DMA chan 0: runt_receive_buf: 0
     Rx DMA chan 0: runt_transmit_bu: 0
     Rx DMA chan 0: empty_dequeue: 0
     Rx DMA chan 0: busy_dequeue: 369008
     Rx DMA chan 0: good_dequeue: 5162397
     Rx DMA chan 0: requeue: 0
     Rx DMA chan 0: teardown_dequeue: 0
     Tx DMA chan 0: head_enqueue: 719707
     Tx DMA chan 0: tail_enqueue: 4442465
     Tx DMA chan 0: pad_enqueue: 0
     Tx DMA chan 0: misqueued: 3192404
     Tx DMA chan 0: desc_alloc_fail: 0
     Tx DMA chan 0: pad_alloc_fail: 0
     Tx DMA chan 0: runt_receive_buf: 0
     Tx DMA chan 0: runt_transmit_bu: 112
     Tx DMA chan 0: empty_dequeue: 719707
     Tx DMA chan 0: busy_dequeue: 4053684
     Tx DMA chan 0: good_dequeue: 5162172
     Tx DMA chan 0: requeue: 807055
     Tx DMA chan 0: teardown_dequeue: 0
     
     
ethtool -S eth1
NIC statistics:
     Good Rx Frames: 6331870
     Broadcast Rx Frames: 229
     Multicast Rx Frames: 41
     Pause Rx Frames: 0
     Rx CRC Errors: 0
     Rx Align/Code Errors: 0
     Oversize Rx Frames: 0
     Rx Jabbers: 0
     Undersize (Short) Rx Frames: 0
     Rx Fragments: 0
     Rx Octets: 916043319
     Good Tx Frames: 6331595
     Broadcast Tx Frames: 95
     Multicast Tx Frames: 26
     Pause Tx Frames: 0
     Deferred Tx Frames: 0
     Collisions: 0
     Single Collision Tx Frames: 0
     Multiple Collision Tx Frames: 0
     Excessive Collisions: 0
     Late Collisions: 0
     Tx Underrun: 0
     Carrier Sense Errors: 0
     Tx Octets: 916038844
     Rx + Tx 64 Octet Frames: 355
     Rx + Tx 65-127 Octet Frames: 363
     Rx + Tx 128-255 Octet Frames: 70
     Rx + Tx 256-511 Octet Frames: 191
     Rx + Tx 512-1023 Octet Frames: 1
     Rx + Tx 1024-Up Octet Frames: 12662485
     Net Octets: 1832082163
     Rx Start of Frame Overruns: 0
     Rx Middle of Frame Overruns: 0
     Rx DMA Overruns: 0
     Rx DMA chan 0: head_enqueue: 1
     Rx DMA chan 0: tail_enqueue: 6333876
     Rx DMA chan 0: pad_enqueue: 0
     Rx DMA chan 0: misqueued: 0
     Rx DMA chan 0: desc_alloc_fail: 0
     Rx DMA chan 0: pad_alloc_fail: 0
     Rx DMA chan 0: runt_receive_buf: 0
     Rx DMA chan 0: runt_transmit_bu: 0
     Rx DMA chan 0: empty_dequeue: 0
     Rx DMA chan 0: busy_dequeue: 452619
     Rx DMA chan 0: good_dequeue: 6331829
     Rx DMA chan 0: requeue: 0
     Rx DMA chan 0: teardown_dequeue: 0
     Tx DMA chan 0: head_enqueue: 860423
     Tx DMA chan 0: tail_enqueue: 5471172
     Tx DMA chan 0: pad_enqueue: 0
     Tx DMA chan 0: misqueued: 3955236
     Tx DMA chan 0: desc_alloc_fail: 0
     Tx DMA chan 0: pad_alloc_fail: 0
     Tx DMA chan 0: runt_receive_buf: 0
     Tx DMA chan 0: runt_transmit_bu: 126
     Tx DMA chan 0: empty_dequeue: 860423
     Tx DMA chan 0: busy_dequeue: 5022846
     Tx DMA chan 0: good_dequeue: 6331595
     Tx DMA chan 0: requeue: 978993
     Tx DMA chan 0: teardown_dequeue: 0
     


Does it need to tuning the buffer size on the kernel?
I would appreciate any advise to this issue.

Best regards,
kanae
  • Hi,

    Please complete this checklist and post the results here: processors.wiki.ti.com/.../5x_CPSW

    Your query has been assigned to a TI engineer. Please note that feedback may be delayed due to holidays in the USA.

  • Hi Biser,

    Thank you for your reply.

    Here is Check list items.

    processors.wiki.ti.com/.../5x_CPSW

    -Kernel version and source, also include the results of this command: uname -a
     Linux am437x-evm 4.19.38-g4dae378bbe #155 PREEMPT Mon Nov 11 09:38:02 JST 2019 armv7l GNU/Linux
    -File system, TI SDK or Arago/Yocto based filesytem
     targetNFS; NFS boot
    -Custom board or TI board? Please include device tree source file.
     Custome board based on TMDXSK437X
    -ifconfig <interface such as eth0 or eth1>

    root@am437x-evm:~# ethtool eth0
    Settings for eth0:
            Supported ports: [ TP MII FIBRE ]
            Supported link modes:   10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Supported pause frame use: Symmetric Receive-only
            Supports auto-negotiation: Yes
            Supported FEC modes: Not reported
            Advertised link modes:  10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Advertised pause frame use: No
            Advertised auto-negotiation: Yes
            Advertised FEC modes: Not reported
            Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                                 100baseT/Half 100baseT/Full
                                                 1000baseT/Full
            Link partner advertised pause frame use: Symmetric Receive-only
            Link partner advertised auto-negotiation: Yes
            Link partner advertised FEC modes: Not reported
            Speed: 1000Mb/s
            Duplex: Full
            Port: MII
            PHYAD: 0
            Transceiver: internal
            Auto-negotiation: on
            Supports Wake-on: g
            Wake-on: d
            Current message level: 0x00000000 (0)
    
            Link detected: yes
    root@am437x-evm:~# ethtool eth1
    Settings for eth1:
            Supported ports: [ TP MII FIBRE ]
            Supported link modes:   10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Supported pause frame use: Symmetric Receive-only
            Supports auto-negotiation: Yes
            Supported FEC modes: Not reported
            Advertised link modes:  10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Advertised pause frame use: No
            Advertised auto-negotiation: Yes
            Advertised FEC modes: Not reported
            Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                                 100baseT/Half 100baseT/Full
                                                 1000baseT/Full
            Link partner advertised pause frame use: Symmetric Receive-only
            Link partner advertised auto-negotiation: Yes
            Link partner advertised FEC modes: Not reported
            Speed: 1000Mb/s
            Duplex: Full
            Port: MII
            PHYAD: 1
            Transceiver: internal
            Auto-negotiation: on
            Supports Wake-on: g
            Wake-on: d
            Current message level: 0x00000000 (0)
    
            Link detected: yes
    root@am437x-evm:~# ethtool -S eth0
    NIC statistics:
         Good Rx Frames: 56022
         Broadcast Rx Frames: 21
         Multicast Rx Frames: 47
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 52487311
         Good Tx Frames: 40549
         Broadcast Tx Frames: 1
         Multicast Tx Frames: 99
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 20010851
         Rx + Tx 64 Octet Frames: 24
         Rx + Tx 65-127 Octet Frames: 6191
         Rx + Tx 128-255 Octet Frames: 43907
         Rx + Tx 256-511 Octet Frames: 306
         Rx + Tx 512-1023 Octet Frames: 2396
         Rx + Tx 1024-Up Octet Frames: 43747
         Net Octets: 72498162
         Rx Start of Frame Overruns: 0
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 56132
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 0
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 26331
         Rx DMA chan 0: good_dequeue: 56005
         Rx DMA chan 0: requeue: 0
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 33210
         Tx DMA chan 0: tail_enqueue: 7339
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 1317
         Tx DMA chan 0: desc_alloc_fail: 0
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 15
         Tx DMA chan 0: empty_dequeue: 33210
         Tx DMA chan 0: busy_dequeue: 4558
         Tx DMA chan 0: good_dequeue: 40549
         Tx DMA chan 0: requeue: 2989
         Tx DMA chan 0: teardown_dequeue: 0
    root@am437x-evm:~# ethtool -S eth1
    NIC statistics:
         Good Rx Frames: 56027
         Broadcast Rx Frames: 21
         Multicast Rx Frames: 47
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 52488021
         Good Tx Frames: 40554
         Broadcast Tx Frames: 1
         Multicast Tx Frames: 99
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 20011641
         Rx + Tx 64 Octet Frames: 24
         Rx + Tx 65-127 Octet Frames: 6191
         Rx + Tx 128-255 Octet Frames: 43917
         Rx + Tx 256-511 Octet Frames: 306
         Rx + Tx 512-1023 Octet Frames: 2396
         Rx + Tx 1024-Up Octet Frames: 43747
         Net Octets: 72499662
         Rx Start of Frame Overruns: 0
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 56137
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 0
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 26336
         Rx DMA chan 0: good_dequeue: 56010
         Rx DMA chan 0: requeue: 0
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 33215
         Tx DMA chan 0: tail_enqueue: 7339
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 1317
         Tx DMA chan 0: desc_alloc_fail: 0
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 15
         Tx DMA chan 0: empty_dequeue: 33215
         Tx DMA chan 0: busy_dequeue: 4558
         Tx DMA chan 0: good_dequeue: 40554
         Tx DMA chan 0: requeue: 2989
         Tx DMA chan 0: teardown_dequeue: 0
    root@am437x-evm:~# ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:80:B3:71:20:7B
              inet addr:192.168.200.1  Bcast:192.168.200.255  Mask:255.255.255.0
              inet6 addr: fe80::280:b3ff:fe71:207b/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:56036 errors:0 dropped:0 overruns:0 frame:0
              TX packets:40544 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:52489898 (50.0 MiB)  TX bytes:19847681 (18.9 MiB)
              Interrupt:43
    
    eth1      Link encap:Ethernet  HWaddr 00:80:B3:71:20:7C
              inet addr:192.168.100.1  Bcast:192.168.100.255  Mask:255.255.255.0
              inet6 addr: fe80::280:b3ff:fe71:207c/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:2 errors:0 dropped:0 overruns:0 frame:0
              TX packets:38 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:447 (447.0 B)  TX bytes:6036 (5.8 KiB)
    
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:82 errors:0 dropped:0 overruns:0 frame:0
              TX packets:82 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:6220 (6.0 KiB)  TX bytes:6220 (6.0 KiB)
    
    root@am437x-evm:~#
    

    root@am437x-evm:/home/avaldata# ethtool eth0
    Settings for eth0:
            Supported ports: [ TP MII FIBRE ]
            Supported link modes:   10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Supported pause frame use: Symmetric Receive-only
            Supports auto-negotiation: Yes
            Supported FEC modes: Not reported
            Advertised link modes:  10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Advertised pause frame use: No
            Advertised auto-negotiation: Yes
            Advertised FEC modes: Not reported
            Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                                 100baseT/Half 100baseT/Full
                                                 1000baseT/Full
            Link partner advertised pause frame use: Symmetric Receive-only
            Link partner advertised auto-negotiation: Yes
            Link partner advertised FEC modes: Not reported
            Speed: 1000Mb/s
            Duplex: Full
            Port: MII
            PHYAD: 0
            Transceiver: internal
            Auto-negotiation: on
            Supports Wake-on: g
            Wake-on: d
            Current message level: 0x00000000 (0)
    
            Link detected: yes
    root@am437x-evm:/home/avaldata# ethtool eth1
    Settings for eth1:
            Supported ports: [ TP MII FIBRE ]
            Supported link modes:   10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Supported pause frame use: Symmetric Receive-only
            Supports auto-negotiation: Yes
            Supported FEC modes: Not reported
            Advertised link modes:  10baseT/Half 10baseT/Full
                                    100baseT/Half 100baseT/Full
                                    1000baseT/Half 1000baseT/Full
            Advertised pause frame use: No
            Advertised auto-negotiation: Yes
            Advertised FEC modes: Not reported
            Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                                 100baseT/Half 100baseT/Full
                                                 1000baseT/Full
            Link partner advertised pause frame use: Symmetric Receive-only
            Link partner advertised auto-negotiation: Yes
            Link partner advertised FEC modes: Not reported
            Speed: 1000Mb/s
            Duplex: Full
            Port: MII
            PHYAD: 1
            Transceiver: internal
            Auto-negotiation: on
            Supports Wake-on: g
            Wake-on: d
            Current message level: 0x00000000 (0)
    
            Link detected: yes
    root@am437x-evm:/home/avaldata# ethtool -S eth0
    NIC statistics:
         Good Rx Frames: 3968710
         Broadcast Rx Frames: 227
         Multicast Rx Frames: 92
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 315917677
         Good Tx Frames: 3071809
         Broadcast Tx Frames: 13
         Multicast Tx Frames: 102
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 215770157
         Rx + Tx 64 Octet Frames: 111
         Rx + Tx 65-127 Octet Frames: 1035089
         Rx + Tx 128-255 Octet Frames: 45149
         Rx + Tx 256-511 Octet Frames: 329
         Rx + Tx 512-1023 Octet Frames: 2906
         Rx + Tx 1024-Up Octet Frames: 5956935
         Net Octets: 531687834
         Rx Start of Frame Overruns: 18046
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 13667
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 3950765
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 370
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 304619
         Rx DMA chan 0: good_dequeue: 3950638
         Rx DMA chan 0: requeue: 170
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 147071
         Tx DMA chan 0: tail_enqueue: 2925122
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 33315
         Tx DMA chan 0: desc_alloc_fail: 22
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 156
         Tx DMA chan 0: empty_dequeue: 146990
         Tx DMA chan 0: busy_dequeue: 81961030
         Tx DMA chan 0: good_dequeue: 3071678
         Tx DMA chan 0: requeue: 72839
         Tx DMA chan 0: teardown_dequeue: 515
    root@am437x-evm:/home/avaldata# ethtool -S eth1
    NIC statistics:
         Good Rx Frames: 3968624
         Broadcast Rx Frames: 189
         Multicast Rx Frames: 92
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 315903943
         Good Tx Frames: 3071761
         Broadcast Tx Frames: 13
         Multicast Tx Frames: 102
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 215762757
         Rx + Tx 64 Octet Frames: 109
         Rx + Tx 65-127 Octet Frames: 1035071
         Rx + Tx 128-255 Octet Frames: 45037
         Rx + Tx 256-511 Octet Frames: 327
         Rx + Tx 512-1023 Octet Frames: 2906
         Rx + Tx 1024-Up Octet Frames: 5956935
         Net Octets: 531666700
         Rx Start of Frame Overruns: 18046
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 13667
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 3950679
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 370
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 304563
         Rx DMA chan 0: good_dequeue: 3950552
         Rx DMA chan 0: requeue: 170
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 147023
         Tx DMA chan 0: tail_enqueue: 2925122
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 33315
         Tx DMA chan 0: desc_alloc_fail: 22
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 154
         Tx DMA chan 0: empty_dequeue: 146942
         Tx DMA chan 0: busy_dequeue: 81961030
         Tx DMA chan 0: good_dequeue: 3071630
         Tx DMA chan 0: requeue: 72839
         Tx DMA chan 0: teardown_dequeue: 515
    root@am437x-evm:/home/avaldata# ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:80:B3:71:20:7B
              inet addr:192.168.200.1  Bcast:192.168.200.255  Mask:255.255.255.0
              inet6 addr: fe80::280:b3ff:fe71:207b/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:1456725 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1362267 errors:13 dropped:17 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:2009790566 (1.8 GiB)  TX bytes:1969445225 (1.8 GiB)
              Interrupt:43
    
    eth1      Link encap:Ethernet  HWaddr 00:80:B3:71:20:7C
              inet addr:192.168.100.1  Bcast:192.168.100.255  Mask:255.255.255.0
              inet6 addr: fe80::280:b3ff:fe71:207c/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:2493884 errors:0 dropped:0 overruns:0 frame:0
              TX packets:1709897 errors:5 dropped:5 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:2573924347 (2.3 GiB)  TX bytes:2528802376 (2.3 GiB)
    
    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:124 errors:0 dropped:0 overruns:0 frame:0
              TX packets:124 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:13116 (12.8 KiB)  TX bytes:13116 (12.8 KiB)
    
    root@am437x-evm:/home/avaldata#
    

    This thread is same system in this thread.

    https://e2e.ti.com/support/processors/f/791/p/855890/3178038#

    Best regards,
    Kanae

  • Hi Biser,

    Here are additional information; the log before increasing buffer.

    cat /proc/sys/net/core/rmem_max
    180224
    cat /proc/sys/net/core/rmem_default
    180224
    
    cat /proc/net/snmp
    Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagrams InUnknownProtos InDiscards InDelivers OutRequests OutDiscards OutNoRoutes ReasmTimeout ReasmReqds ReasmOKs ReasmFails FragOKs FragFails FragCreates
    Ip: 2 64 595568 0 0 0 0 0 42600 42540 0 0 0 595504 42536 0 42536 0 595504
    Icmp: InMsgs InErrors InCsumErrors InDestUnreachs InTimeExcds InParmProbs InSrcQuenchs InRedirects InEchos InEchoReps InTimestamps InTimestampReps InAddrMasks InAddrMaskReps OutMsgs OutErrors OutDestUnreachs OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects OutEchos OutEchoReps OutTimestamps OutTimestampReps OutAddrMasks OutAddrMaskReps
    Icmp: 2 0 0 0 0 0 0 0 0 2 0 0 0 0 2 0 0 0 0 0 0 2 0 0 0 0 0
    IcmpMsg: InType0 OutType8
    IcmpMsg: 2 2
    Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts InCsumErrors
    Tcp: 1 200 120000 -1 0 0 0 0 0 0 0 0 0 0 0
    Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
    Udp: 42536 0 0 42538 0 0 0 62
    UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
    UdpLite: 0 0 0 0 0 0 0 0
    
    
    ethtool -S eth0
    NIC statistics:
         Good Rx Frames: 595595
         Broadcast Rx Frames: 67
         Multicast Rx Frames: 17
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 894125264
         Good Tx Frames: 595568
         Broadcast Tx Frames: 33
         Multicast Tx Frames: 24
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 894120094
         Rx + Tx 64 Octet Frames: 5
         Rx + Tx 65-127 Octet Frames: 70
         Rx + Tx 128-255 Octet Frames: 20
         Rx + Tx 256-511 Octet Frames: 60
         Rx + Tx 512-1023 Octet Frames: 0
         Rx + Tx 1024-Up Octet Frames: 1191008
         Net Octets: 1788245358
         Rx Start of Frame Overruns: 0
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 597625
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 0
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 42581
         Rx DMA chan 0: good_dequeue: 595578
         Rx DMA chan 0: requeue: 0
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 74144
         Tx DMA chan 0: tail_enqueue: 521424
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 374044
         Tx DMA chan 0: desc_alloc_fail: 0
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 7
         Tx DMA chan 0: empty_dequeue: 74144
         Tx DMA chan 0: busy_dequeue: 487614
         Tx DMA chan 0: good_dequeue: 595568
         Tx DMA chan 0: requeue: 93143
         Tx DMA chan 0: teardown_dequeue: 0     
         
    ethtool -S eth1
    NIC statistics:
         Good Rx Frames: 595599
         Broadcast Rx Frames: 71
         Multicast Rx Frames: 17
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 894126648
         Good Tx Frames: 595572
         Broadcast Tx Frames: 37
         Multicast Tx Frames: 24
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 894121478
         Rx + Tx 64 Octet Frames: 5
         Rx + Tx 65-127 Octet Frames: 70
         Rx + Tx 128-255 Octet Frames: 20
         Rx + Tx 256-511 Octet Frames: 68
         Rx + Tx 512-1023 Octet Frames: 0
         Rx + Tx 1024-Up Octet Frames: 1191008
         Net Octets: 1788248126
         Rx Start of Frame Overruns: 0
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 597629
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 0
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 42585
         Rx DMA chan 0: good_dequeue: 595582
         Rx DMA chan 0: requeue: 0
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 74148
         Tx DMA chan 0: tail_enqueue: 521424
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 374044
         Tx DMA chan 0: desc_alloc_fail: 0
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 7
         Tx DMA chan 0: empty_dequeue: 74148
         Tx DMA chan 0: busy_dequeue: 487614
         Tx DMA chan 0: good_dequeue: 595572
         Tx DMA chan 0: requeue: 93143
         Tx DMA chan 0: teardown_dequeue: 0
         

    cat /proc/sys/net/core/rmem_max
    180224
    cat /proc/sys/net/core/rmem_default
    180224
    
    cat /proc/net/snmp
    Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagrams InUnknownProtos InDiscards InDelivers OutRequests OutDiscards OutNoRoutes ReasmTimeout ReasmReqds ReasmOKs ReasmFails FragOKs FragFails FragCreates
    Ip: 2 64 96302 0 4 0 0 0 6936 6880 0 0 1 96235 6873 1 6875 0 96250
    Icmp: InMsgs InErrors InCsumErrors InDestUnreachs InTimeExcds InParmProbs InSrcQuenchs InRedirects InEchos InEchoReps InTimestamps InTimestampReps InAddrMasks InAddrMaskReps OutMsgs OutErrors OutDestUnreachs OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects OutEchos OutEchoReps OutTimestamps OutTimestampReps OutAddrMasks OutAddrMaskReps
    Icmp: 3 0 0 1 0 0 0 0 0 2 0 0 0 0 3 0 0 1 0 0 0 2 0 0 0 0 0
    IcmpMsg: InType0 InType3 OutType8 OutType11
    IcmpMsg: 2 1 2 1
    Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts InCsumErrors
    Tcp: 1 200 120000 -1 0 0 0 0 0 0 0 0 0 0 0
    Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
    Udp: 6873 0 0 6877 0 0 0 60
    UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
    UdpLite: 0 0 0 0 0 0 0 0
    
    
    ethtool -S eth0
    NIC statistics:
         Good Rx Frames: 96332
         Broadcast Rx Frames: 72
         Multicast Rx Frames: 17
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 144512056
         Good Tx Frames: 96315
         Broadcast Tx Frames: 34
         Multicast Tx Frames: 24
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 144526746
         Rx + Tx 64 Octet Frames: 4
         Rx + Tx 65-127 Octet Frames: 69
         Rx + Tx 128-255 Octet Frames: 20
         Rx + Tx 256-511 Octet Frames: 66
         Rx + Tx 512-1023 Octet Frames: 2
         Rx + Tx 1024-Up Octet Frames: 192486
         Net Octets: 289038802
         Rx Start of Frame Overruns: 1
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 98361
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 0
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 6887
         Rx DMA chan 0: good_dequeue: 96314
         Rx DMA chan 0: requeue: 0
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 13383
         Tx DMA chan 0: tail_enqueue: 82932
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 57910
         Tx DMA chan 0: desc_alloc_fail: 0
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 6
         Tx DMA chan 0: empty_dequeue: 13383
         Tx DMA chan 0: busy_dequeue: 75707
         Tx DMA chan 0: good_dequeue: 96315
         Tx DMA chan 0: requeue: 15677
         Tx DMA chan 0: teardown_dequeue: 0
    
    ethtool -S eth1
    NIC statistics:
         Good Rx Frames: 96332
         Broadcast Rx Frames: 72
         Multicast Rx Frames: 17
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 144512056
         Good Tx Frames: 96315
         Broadcast Tx Frames: 34
         Multicast Tx Frames: 24
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 144526746
         Rx + Tx 64 Octet Frames: 4
         Rx + Tx 65-127 Octet Frames: 69
         Rx + Tx 128-255 Octet Frames: 20
         Rx + Tx 256-511 Octet Frames: 66
         Rx + Tx 512-1023 Octet Frames: 2
         Rx + Tx 1024-Up Octet Frames: 192486
         Net Octets: 289038802
         Rx Start of Frame Overruns: 1
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan 0: head_enqueue: 1
         Rx DMA chan 0: tail_enqueue: 98361
         Rx DMA chan 0: pad_enqueue: 0
         Rx DMA chan 0: misqueued: 0
         Rx DMA chan 0: desc_alloc_fail: 0
         Rx DMA chan 0: pad_alloc_fail: 0
         Rx DMA chan 0: runt_receive_buf: 0
         Rx DMA chan 0: runt_transmit_bu: 0
         Rx DMA chan 0: empty_dequeue: 0
         Rx DMA chan 0: busy_dequeue: 6887
         Rx DMA chan 0: good_dequeue: 96314
         Rx DMA chan 0: requeue: 0
         Rx DMA chan 0: teardown_dequeue: 0
         Tx DMA chan 0: head_enqueue: 13383
         Tx DMA chan 0: tail_enqueue: 82932
         Tx DMA chan 0: pad_enqueue: 0
         Tx DMA chan 0: misqueued: 57910
         Tx DMA chan 0: desc_alloc_fail: 0
         Tx DMA chan 0: pad_alloc_fail: 0
         Tx DMA chan 0: runt_receive_buf: 0
         Tx DMA chan 0: runt_transmit_bu: 6
         Tx DMA chan 0: empty_dequeue: 13383
         Tx DMA chan 0: busy_dequeue: 75707
         Tx DMA chan 0: good_dequeue: 96315
         Tx DMA chan 0: requeue: 15677
         Tx DMA chan 0: teardown_dequeue: 0
         

    And TI_EVM:AM3358 SK board has this error, too. on the same "UDP 20KB data" communication.
    Here are the logs of OK (1ch) and NG(2ch).

    cat /proc/sys/net/core/rmem_max
    163840
    cat /proc/sys/net/core/rmem_default
    163840
    
    sysctl -w net.core.netdev_max_backlog=20000
    sysctl -w net.ipv4.udp_mem='17565 87380 50331648'
    sysctl -w net.core.rmem_max=50331648
    sysctl -w net.core.rmem_default=50331648
    sysctl -w net.ipv4.route.flush=1
    
    cat /proc/sys/net/core/rmem_max
    50331648
    cat /proc/sys/net/core/rmem_default
    50331648
    
    
    cat /proc/net/snmp
    Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagrams InUnknownProtos InDiscards InDelivers OutRequests OutDiscards OutNoRoutes ReasmTimeout ReasmReqds ReasmOKs ReasmFails FragOKs FragFails FragCreates
    Ip: 2 64 942694 0 19 0 0 0 103032 102997 0 0 0 942498 102855 0 102856 0 942512
    Icmp: InMsgs InErrors InCsumErrors InDestUnreachs InTimeExcds InParmProbs InSrcQuenchs InRedirects InEchos InEchoReps InTimestamps InTimestampReps InAddrMasks InAddrMaskReps OutMsgs OutErrors OutDestUnreachs OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects OutEchos OutEchoReps OutTimestamps OutTimestampReps OutAddrMasks OutAddrMaskReps
    Icmp: 6 0 0 2 0 0 0 0 0 4 0 0 0 0 4 0 0 0 0 0 0 4 0 0 0 0 0
    IcmpMsg: InType0 InType3 OutType8
    IcmpMsg: 4 2 4
    Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts InCsumErrors
    Tcp: 1 200 120000 -1 7 7 0 0 0 123 123 0 0 0 0
    Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors
    Udp: 102863 0 0 102870 0 0 0
    UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors
    UdpLite: 0 0 0 0 0 0 0
    
    
    ethtool -S eth0
    NIC statistics:
         Good Rx Frames: 942575
         Broadcast Rx Frames: 60
         Multicast Rx Frames: 0
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 1379005439
         Good Tx Frames: 942566
         Broadcast Tx Frames: 37
         Multicast Tx Frames: 0
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 1379025670
         Rx + Tx 64 Octet Frames: 28
         Rx + Tx 65-127 Octet Frames: 35
         Rx + Tx 128-255 Octet Frames: 10
         Rx + Tx 256-511 Octet Frames: 57
         Rx + Tx 512-1023 Octet Frames: 82913
         Rx + Tx 1024-Up Octet Frames: 1802098
         Net Octets: 2758031109
         Rx Start of Frame Overruns: 0
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan: head_enqueue: 1
         Rx DMA chan: tail_enqueue: 942638
         Rx DMA chan: pad_enqueue: 0
         Rx DMA chan: misqueued: 0
         Rx DMA chan: desc_alloc_fail: 0
         Rx DMA chan: pad_alloc_fail: 0
         Rx DMA chan: runt_receive_buf: 0
         Rx DMA chan: runt_transmit_buf: 0
         Rx DMA chan: empty_dequeue: 0
         Rx DMA chan: busy_dequeue: 205822
         Rx DMA chan: good_dequeue: 942575
         Rx DMA chan: requeue: 0
         Rx DMA chan: teardown_dequeue: 0
         Tx DMA chan: head_enqueue: 105111
         Tx DMA chan: tail_enqueue: 837455
         Tx DMA chan: pad_enqueue: 0
         Tx DMA chan: misqueued: 2422
         Tx DMA chan: desc_alloc_fail: 0
         Tx DMA chan: pad_alloc_fail: 0
         Tx DMA chan: runt_receive_buf: 0
         Tx DMA chan: runt_transmit_buf: 15
         Tx DMA chan: empty_dequeue: 310929
         Tx DMA chan: busy_dequeue: 812719
         Tx DMA chan: good_dequeue: 942566
         Tx DMA chan: requeue: 235177
         Tx DMA chan: teardown_dequeue: 0
         
         
    ethtool -S eth1
    NIC statistics:
         Good Rx Frames: 942593
         Broadcast Rx Frames: 78
         Multicast Rx Frames: 0
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 1379007667
         Good Tx Frames: 942568
         Broadcast Tx Frames: 39
         Multicast Tx Frames: 0
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 1379026362
         Rx + Tx 64 Octet Frames: 28
         Rx + Tx 65-127 Octet Frames: 51
         Rx + Tx 128-255 Octet Frames: 10
         Rx + Tx 256-511 Octet Frames: 61
         Rx + Tx 512-1023 Octet Frames: 82913
         Rx + Tx 1024-Up Octet Frames: 1802098
         Net Octets: 2758034029
         Rx Start of Frame Overruns: 0
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan: head_enqueue: 1
         Rx DMA chan: tail_enqueue: 942656
         Rx DMA chan: pad_enqueue: 0
         Rx DMA chan: misqueued: 0
         Rx DMA chan: desc_alloc_fail: 0
         Rx DMA chan: pad_alloc_fail: 0
         Rx DMA chan: runt_receive_buf: 0
         Rx DMA chan: runt_transmit_buf: 0
         Rx DMA chan: empty_dequeue: 0
         Rx DMA chan: busy_dequeue: 205832
         Rx DMA chan: good_dequeue: 942593
         Rx DMA chan: requeue: 0
         Rx DMA chan: teardown_dequeue: 0
         Tx DMA chan: head_enqueue: 105113
         Tx DMA chan: tail_enqueue: 837455
         Tx DMA chan: pad_enqueue: 0
         Tx DMA chan: misqueued: 2422
         Tx DMA chan: desc_alloc_fail: 0
         Tx DMA chan: pad_alloc_fail: 0
         Tx DMA chan: runt_receive_buf: 0
         Tx DMA chan: runt_transmit_buf: 15
         Tx DMA chan: empty_dequeue: 310941
         Tx DMA chan: busy_dequeue: 812719
         Tx DMA chan: good_dequeue: 942568
         Tx DMA chan: requeue: 235179
         Tx DMA chan: teardown_dequeue: 0
         

    cat /proc/sys/net/core/rmem_max
    163840
    cat /proc/sys/net/core/rmem_default
    163840
    
    sysctl -w net.core.netdev_max_backlog=20000
    sysctl -w net.ipv4.udp_mem='17565 87380 50331648'
    sysctl -w net.core.rmem_max=50331648
    sysctl -w net.core.rmem_default=50331648
    sysctl -w net.ipv4.route.flush=1
    
    cat /proc/sys/net/core/rmem_max
    50331648
    cat /proc/sys/net/core/rmem_default
    50331648
    
    
    cat /proc/net/snmp
    Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagrams InUnknownProtos InDiscards InDelivers OutRequests OutDiscards OutNoRoutes ReasmTimeout ReasmReqds ReasmOKs ReasmFails FragOKs FragFails FragCreates
    Ip: 2 64 367524 0 18 0 0 0 26373 26365 0 0 1 367373 26240 1 26242 0 367388
    Icmp: InMsgs InErrors InCsumErrors InDestUnreachs InTimeExcds InParmProbs InSrcQuenchs InRedirects InEchos InEchoReps InTimestamps InTimestampReps InAddrMasks InAddrMaskReps OutMsgs OutErrors OutDestUnreachs OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects OutEchos OutEchoReps OutTimestamps OutTimestampReps OutAddrMasks OutAddrMaskReps
    Icmp: 3 0 0 1 0 0 0 0 0 2 0 0 0 0 3 0 0 1 0 0 0 2 0 0 0 0 0
    IcmpMsg: InType0 InType3 OutType8 OutType11
    IcmpMsg: 2 1 2 1
    Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts InCsumErrors
    Tcp: 1 200 120000 -1 6 6 0 0 0 108 108 0 0 1 0
    Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors
    Udp: 26250 0 0 26254 0 0 0
    UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors
    UdpLite: 0 0 0 0 0 0 0
    
    
    ethtool -S eth0
    NIC statistics:
         Good Rx Frames: 367426
         Broadcast Rx Frames: 35
         Multicast Rx Frames: 7
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 551595669
         Good Tx Frames: 367429
         Broadcast Tx Frames: 29
         Multicast Tx Frames: 0
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 551617684
         Rx + Tx 64 Octet Frames: 22
         Rx + Tx 65-127 Octet Frames: 18
         Rx + Tx 128-255 Octet Frames: 11
         Rx + Tx 256-511 Octet Frames: 40
         Rx + Tx 512-1023 Octet Frames: 2
         Rx + Tx 1024-Up Octet Frames: 734762
         Net Octets: 1103213353
         Rx Start of Frame Overruns: 1
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan: head_enqueue: 1
         Rx DMA chan: tail_enqueue: 367481
         Rx DMA chan: pad_enqueue: 0
         Rx DMA chan: misqueued: 0
         Rx DMA chan: desc_alloc_fail: 0
         Rx DMA chan: pad_alloc_fail: 0
         Rx DMA chan: runt_receive_buf: 0
         Rx DMA chan: runt_transmit_buf: 0
         Rx DMA chan: empty_dequeue: 0
         Rx DMA chan: busy_dequeue: 52534
         Rx DMA chan: good_dequeue: 367418
         Rx DMA chan: requeue: 0
         Rx DMA chan: teardown_dequeue: 0
         Tx DMA chan: head_enqueue: 26848
         Tx DMA chan: tail_enqueue: 340581
         Tx DMA chan: pad_enqueue: 0
         Tx DMA chan: misqueued: 545
         Tx DMA chan: desc_alloc_fail: 0
         Tx DMA chan: pad_alloc_fail: 0
         Tx DMA chan: runt_receive_buf: 0
         Tx DMA chan: runt_transmit_buf: 11
         Tx DMA chan: empty_dequeue: 79361
         Tx DMA chan: busy_dequeue: 326592
         Tx DMA chan: good_dequeue: 367429
         Tx DMA chan: requeue: 63807
         Tx DMA chan: teardown_dequeue: 0
    
    ethtool -S eth1
    NIC statistics:
         Good Rx Frames: 367429
         Broadcast Rx Frames: 38
         Multicast Rx Frames: 7
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 551596707
         Good Tx Frames: 367432
         Broadcast Tx Frames: 32
         Multicast Tx Frames: 0
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 551618722
         Rx + Tx 64 Octet Frames: 22
         Rx + Tx 65-127 Octet Frames: 18
         Rx + Tx 128-255 Octet Frames: 11
         Rx + Tx 256-511 Octet Frames: 46
         Rx + Tx 512-1023 Octet Frames: 2
         Rx + Tx 1024-Up Octet Frames: 734762
         Net Octets: 1103215429
         Rx Start of Frame Overruns: 1
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 0
         Rx DMA chan: head_enqueue: 1
         Rx DMA chan: tail_enqueue: 367484
         Rx DMA chan: pad_enqueue: 0
         Rx DMA chan: misqueued: 0
         Rx DMA chan: desc_alloc_fail: 0
         Rx DMA chan: pad_alloc_fail: 0
         Rx DMA chan: runt_receive_buf: 0
         Rx DMA chan: runt_transmit_buf: 0
         Rx DMA chan: empty_dequeue: 0
         Rx DMA chan: busy_dequeue: 52540
         Rx DMA chan: good_dequeue: 367421
         Rx DMA chan: requeue: 0
         Rx DMA chan: teardown_dequeue: 0
         Tx DMA chan: head_enqueue: 26851
         Tx DMA chan: tail_enqueue: 340581
         Tx DMA chan: pad_enqueue: 0
         Tx DMA chan: misqueued: 545
         Tx DMA chan: desc_alloc_fail: 0
         Tx DMA chan: pad_alloc_fail: 0
         Tx DMA chan: runt_receive_buf: 0
         Tx DMA chan: runt_transmit_buf: 11
         Tx DMA chan: empty_dequeue: 79370
         Tx DMA chan: busy_dequeue: 326592
         Tx DMA chan: good_dequeue: 367432
         Tx DMA chan: requeue: 63810
         Tx DMA chan: teardown_dequeue: 0
         

    This NG results of "Overruns counts" is different such as "1" or "2"...
    Could you please explain the condition of these differences?

    Best regards,
    kanae

  •  

    Hi Sitara support Team,

    Please reply the answer based on your current status.

    Here is the additional test result.

    Environment; Host: server PC, Client: TI:AM3358SK board
    -Reproduced by LAN just 1ch TCP communication (TI:AM3358SK board)
     that "Rx Start of Frame Overruns" counts up.

    Please refer the log and the application source code.

    cat /proc/sys/net/core/rmem_max
    163840
    cat /proc/sys/net/core/rmem_default
    163840
    
    
    cat /proc/sys/net/core/rmem_max
    163840
    cat /proc/sys/net/core/rmem_default
    163840
    
    
    cat /proc/net/snmp
    Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagrams InUnknownProtos InDiscards InDelivers OutRequests OutDiscards OutNoRoutes ReasmTimeout ReasmReqds ReasmOKs ReasmFails FragOKs FragFails FragCreates
    Ip: 2 64 1666056 0 0 0 0 0 1666056 2234203 0 0 0 0 0 0 0 0 0
    Icmp: InMsgs InErrors InCsumErrors InDestUnreachs InTimeExcds InParmProbs InSrcQuenchs InRedirects InEchos InEchoReps InTimestamps InTimestampReps InAddrMasks InAddrMaskReps OutMsgs OutErrors OutDestUnreachs OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects OutEchos OutEchoReps OutTimestamps OutTimestampReps OutAddrMasks OutAddrMaskReps
    Icmp: 2 0 0 0 0 0 0 0 0 2 0 0 0 0 2 0 0 0 0 0 0 2 0 0 0 0 0
    IcmpMsg: InType0 OutType8
    IcmpMsg: 2 2
    Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts InCsumErrors
    Tcp: 1 200 120000 -1 9 8 0 1 1 1665979 2234058 0 0 8 0
    Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors
    Udp: 10 0 0 10 0 0 0
    UdpLite: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors
    UdpLite: 0 0 0 0 0 0 0
    
    
    ethtool -S eth0
    NIC statistics:
         Good Rx Frames: 1667934
         Broadcast Rx Frames: 68
         Multicast Rx Frames: 14
         Pause Rx Frames: 0
         Rx CRC Errors: 0
         Rx Align/Code Errors: 0
         Oversize Rx Frames: 0
         Rx Jabbers: 0
         Undersize (Short) Rx Frames: 0
         Rx Fragments: 0
         Rx Octets: 2250244253
         Good Tx Frames: 2234223
         Broadcast Tx Frames: 149
         Multicast Tx Frames: 0
         Pause Tx Frames: 0
         Deferred Tx Frames: 0
         Collisions: 0
         Single Collision Tx Frames: 0
         Multiple Collision Tx Frames: 0
         Excessive Collisions: 0
         Late Collisions: 0
         Tx Underrun: 0
         Carrier Sense Errors: 0
         Tx Octets: 2339581508
         Rx + Tx 64 Octet Frames: 301
         Rx + Tx 65-127 Octet Frames: 920938
         Rx + Tx 128-255 Octet Frames: 87
         Rx + Tx 256-511 Octet Frames: 157
         Rx + Tx 512-1023 Octet Frames: 25
         Rx + Tx 1024-Up Octet Frames: 2980649
         Net Octets: 294858465
         Rx Start of Frame Overruns: 1991
         Rx Middle of Frame Overruns: 0
         Rx DMA Overruns: 1991
         Rx DMA chan: head_enqueue: 1
         Rx DMA chan: tail_enqueue: 1665992
         Rx DMA chan: pad_enqueue: 0
         Rx DMA chan: misqueued: 76
         Rx DMA chan: desc_alloc_fail: 0
         Rx DMA chan: pad_alloc_fail: 0
         Rx DMA chan: runt_receive_buf: 0
         Rx DMA chan: runt_transmit_buf: 0
         Rx DMA chan: empty_dequeue: 0
         Rx DMA chan: busy_dequeue: 454591
         Rx DMA chan: good_dequeue: 1665929
         Rx DMA chan: requeue: 28
         Rx DMA chan: teardown_dequeue: 0
         Tx DMA chan: head_enqueue: 1090146
         Tx DMA chan: tail_enqueue: 1144077
         Tx DMA chan: pad_enqueue: 0
         Tx DMA chan: misqueued: 57621
         Tx DMA chan: desc_alloc_fail: 0
         Tx DMA chan: pad_alloc_fail: 0
         Tx DMA chan: runt_receive_buf: 0
         Tx DMA chan: runt_transmit_buf: 122
         Tx DMA chan: empty_dequeue: 1443565
         Tx DMA chan: busy_dequeue: 446485
         Tx DMA chan: good_dequeue: 2234223
         Tx DMA chan: requeue: 1097574
         Tx DMA chan: teardown_dequeue: 0
         
    ,
    /**************************************************************************/
    /* This sample program provides a code for a connection-oriented server. */
    /**************************************************************************/
    
    /**************************************************************************/
    /* Header files needed for this sample program . */
    /**************************************************************************/
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <unistd.h>
    #include <sys/time.h>
    #include <sys/types.h>
    #include <sys/socket.h>
    #include <netinet/in.h>
    #include <sys/poll.h>
    
    /**************************************************************************/
    /* Constants used by this program */
    /**************************************************************************/
    #define SERVER_PORT 12345
    //#define BUFFER_LENGTH 250
    #define BUFFER_LENGTH 16*10246*1024
    #define FALSE 0
    
    int main (int argc, char *argv[]) 
    {
    	/***********************************************************************/
    	/* Variable and structure definitions. */
    	/***********************************************************************/
    	int sd=-1, sd2=-1;
    	int rc, length, on=1;
    //	char buffer[BUFFER_LENGTH];
    	unsigned int buf_size = BUFFER_LENGTH;
    	char *buffer = malloc(buf_size);
    	struct pollfd fds;
    	nfds_t nfds = 1;
    	int timeout;
    	struct sockaddr_in6 serveraddr;
    	unsigned int loop = 0;
    	
    	/***********************************************************************/
    	/* A do/while(FALSE) loop is used to make error cleanup easier. The */
    	/* close() of each of the socket descriptors is only done once at the */
    	/* very end of the program. */
    	/***********************************************************************/
    	do 
    	{
    		/********************************************************************/
    		/* The socket() function returns a socket descriptor, representing */
    		/* an endpoint. The statement also identifies that the INET6 */
    		/* (Internet Protocol version 6) address family with the TCP */
    		/* transport (SOCK_STREAM) will be used for this socket. */
    		/********************************************************************/
    //		sd = socket(AF_INET6, SOCK_STREAM, 0);
    		sd = socket(AF_INET, SOCK_STREAM, 0);
    		if (sd < 0)
    		{
    			perror("socket() failed");
    			break;
    		}
    		
    		/********************************************************************/
    		/* The setsockopt() function is used to allow the local address to */
    		/* be reused when the server is restarted before the required wait */
    		/* time expires. */
    		/********************************************************************/
    		rc = setsockopt(sd, SOL_SOCKET, SO_REUSEADDR, (char *)&on, sizeof(on));
    		if (rc < 0)
    		{
    			perror("setsockopt(SO_REUSEADDR) failed");
    			break;
    		}
    		
    		/********************************************************************/
    		/* After the socket descriptor is created, a bind() function gets a */
    		/* unique name for the socket. In this example, the user sets the */
    		/* s6_addr to zero, which allows connections to be established from */
    		/* any client that specifies port 12345. */
    		/********************************************************************/
    		memset(&serveraddr, 0, sizeof(serveraddr));
    //		serveraddr.sin6_family = AF_INET6;
    		serveraddr.sin6_family = AF_INET;
    		serveraddr.sin6_port = htons(SERVER_PORT);
    		memcpy(&serveraddr.sin6_addr, &in6addr_any, sizeof(in6addr_any));
    		rc = bind(sd, (struct sockaddr *)&serveraddr, sizeof(serveraddr));
    		if (rc < 0)
    		{
    			perror("bind() failed");
    			break;
    		}
    		
    		/********************************************************************/
    		/* The listen() function allows the server to accept incoming */
    		/* client connections. In this example, the backlog is set to 10. */
    		/* This means that the system will queue 10 incoming connection */
    		/* requests before the system starts rejecting the incoming */
    		/* requests. */
    		/********************************************************************/
    		rc = listen(sd, 10);
    		if (rc< 0)
    		{
    			perror("listen() failed");
    			break;
    		}
    		printf("Ready for client connect().\n");
    		
    		/********************************************************************/
    		/* The server uses the accept() function to accept an incoming */
    		/* connection request. The accept() call will block indefinitely */
    		/* waiting for the incoming connection to arrive. */
    		/********************************************************************/
    		sd2 = accept(sd, NULL, NULL);
    		if (sd2 < 0)
    		{
    			perror("accept() failed");
    			break;
    		}
    		
    		/********************************************************************/
    		/* The poll() function allows the process to wait for an event to */
    		/* occur and to wake up the process when the event occurs. In this */
    		/* example, the system notifies the process only when data is */
    		/* available to read. A 30 second timeout is used on this poll */
    		/* call. */
    		/********************************************************************/
    		timeout = 30000;
    		memset(&fds, 0, sizeof(fds));
    		fds.fd = sd2;
    		fds.events = POLLIN;
    		fds.revents = 0;
    		rc = poll(&fds, nfds, timeout);
    		if (rc < 0)
    		{
    			perror("poll() failed");
    			break;
    		}
    		if (rc == 0)
    		{
    			printf("poll() timed out.\n");
    			break;
    		}
    		
    		/********************************************************************/
    		/* In this example we know that the client will send 250 bytes of */
    		/* data over. Knowing this, we can use the SO_RCVLOWAT socket */
    		/* option and specify that we don't want our recv() to wake up until*/
    		/* all 250 bytes of data have arrived. */
    		/********************************************************************/
    		length = BUFFER_LENGTH;
    		rc = setsockopt(sd2, SOL_SOCKET, SO_RCVLOWAT, (char *)&length, sizeof(length));
    		if (rc < 0)
    		{
    			perror("setsockopt(SO_RCVLOWAT) failed");
    			break;
    		}
    		
    		for (loop = 0; ; loop++)
    		{
    			printf("server loop = %d \n", loop);
    			
    			/********************************************************************/
    			/* Receive that 250 bytes data from the client */
    			/********************************************************************/
    			rc = recv(sd2, buffer, buf_size, 0);
    			if (rc < 0)
    			{
    				perror("recv() failed");
    				break;
    			}
    			printf("%d bytes of data were received\n", rc);
    			if (rc == 0 || rc < buf_size)
    			{
    				printf("The client closed the connection before all of the\n");
    				printf("data was sent\n");
    				break;
    			}
    			
    			/********************************************************************/
    			/* Echo the data back to the client */
    			/********************************************************************/
    			rc = send(sd2, buffer, buf_size, 0);
    			if (rc < 0)
    			{
    				perror("send() failed");
    				break;
    			}
    		}
    		
    	/********************************************************************/
    	/* Program complete */
    	/********************************************************************/
    	} while (FALSE);
    	
    	/***********************************************************************/
    	/* Close down any open socket descriptors */
    	/***********************************************************************/
    	if (sd != -1)
    		close(sd);
    	if (sd2 != -1)
    		close(sd2);
    	if (buffer != NULL)
    		free(buffer);
    }
    
    ,
    /**************************************************************************/
    /* This sample program provides a code for a connection-oriented client. */
    /**************************************************************************/
    
    /**************************************************************************/
    /* Header files needed for this sample program */
    /**************************************************************************/
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <unistd.h>
    #include <sys/types.h>
    #include <sys/socket.h>
    #include <netinet/in.h>
    #include <arpa/inet.h>
    #include <netdb.h>
    
    /**************************************************************************/
    /* Constants used by this program */
    /**************************************************************************/
    #define SERVER_PORT "12345"
    //#define BUFFER_LENGTH 250
    #define BUFFER_LENGTH 16*10246*1024
    #define FALSE 0
    //#define SERVER_NAME "ServerHostName"
    #define SERVER_NAME "192.168.200.3"
    #define NETDB_MAX_HOST_NAME_LENGTH 128
    
    /* Pass in 1 parameter which is either the */
    /* address or host name of the server, or */
    /* set the server name in the #define */
    /* SERVER_NAME. */
    int main (int argc, char *argv[])
    {
    	/***********************************************************************/
    	/* Variable and structure definitions. */
    	/***********************************************************************/
    	int sd=-1, rc, bytesReceived;
    //	char buffer[BUFFER_LENGTH];
    	unsigned int buf_size = BUFFER_LENGTH;
    	char *buffer = malloc(buf_size);
    	char server[NETDB_MAX_HOST_NAME_LENGTH];
    	struct sockaddr_in6 serveraddr;
    	struct addrinfo hints, *res;
    	unsigned int loop = 0;
    	
    	/***********************************************************************/
    	/* A do/while(FALSE) loop is used to make error cleanup easier. The */
    	/* close() of the socket descriptor is only done once at the very end */
    	/* of the program. */
    	/***********************************************************************/
    	do 
    	{
    		/********************************************************************/
    		/* The socket() function returns a socket descriptor, representing */
    		/* an endpoint. The statement also identifies that the INET6 */
    		/* (Internet Protocol version 6) address family with the TCP */
    		/* transport (SOCK_STREAM) will be used for this socket. */
    		/********************************************************************/
    //		sd = socket(AF_INET6, SOCK_STREAM, 0);
    		sd = socket(AF_INET, SOCK_STREAM, 0);
    		if (sd < 0)
    		{
    			perror("socket() failed");
    			break;
    		}
    		
    		/********************************************************************/
    		/* If an argument was passed in, use this as the server, otherwise */
    		/* use the #define that is located at the top of this program. */
    		/********************************************************************/
    		if (argc > 1)
    			strcpy(server, argv[1]);
    		else
    			strcpy(server, SERVER_NAME);
    		
    		/*****************************************************************/
    		/* Us the getaddrinfo() function to retrieve the IP address of */
    		/* the server from the hexidecimal colon IP address string or */
    		/* hostname string of the server. */
    		/*****************************************************************/
    		memset(&hints, 0, sizeof(hints));
    //		hints.ai_family = AF_INET6;
    		hints.ai_family = AF_INET;
    		hints.ai_flags = AI_V4MAPPED;
    		hints.ai_socktype = SOCK_STREAM;
    		rc = getaddrinfo(server, SERVER_PORT, &hints, &res);
    		if (rc != 0)
    		{
    			printf("Host not found! (%s)\n", server);
    			perror("getaddrinfo() failed\n");
    			break;
    		}
    		memcpy(&serveraddr, res->ai_addr, sizeof(serveraddr));
    		freeaddrinfo(res);
    		
    		/********************************************************************/
    		/* Use the connect() function to establish a connection to the */
    		/* server. */
    		/********************************************************************/
    		rc = connect(sd, (struct sockaddr *)&serveraddr, sizeof(serveraddr));
    		if (rc < 0)
    		{
    			perror("connect() failed");
    			break;
    		}
    		
    		for (loop = 0; ; loop++)
    		{
    			printf("client loop = %d \n", loop);
    			
    			/********************************************************************/
    			/* Send 250 bytes of a's to the server */
    			/********************************************************************/
    			memset(buffer, 'a', buf_size);
    			rc = send(sd, buffer, buf_size, 0);
    			if (rc < 0)
    			{
    				perror("send() failed");
    				break;
    			}
    			
    			/********************************************************************/
    			/* In this example we know that the server is going to respond with */
    			/* the same 250 bytes that we just sent. Since we know that 250 */
    			/* bytes are going to be sent back to us, we can use the */
    			/* SO_RCVLOWAT socket option and then issue a single recv() and */
    			/* retrieve all of the data. */
    			/* */
    			/* The use of SO_RCVLOWAT is already illustrated in the server */
    			/* side of this example, so we will do something different here. */
    			/* The 250 bytes of the data may arrive in separate packets, */
    			/* therefore we will issue recv() over and over again until all */
    			/* 250 bytes have arrived. */
    			/********************************************************************/
    			bytesReceived = 0;
    			while (bytesReceived < BUFFER_LENGTH)
    			{
    				rc = recv(sd, & buffer[bytesReceived],
    				BUFFER_LENGTH - bytesReceived, 0);
    				if (rc < 0)
    				{
    					perror("recv() failed");
    					break;
    				}
    				else if (rc == 0)
    				{
    					printf("The server closed the connection\n");
    					break;
    				}
    				
    				/*****************************************************************/
    				/* Increment the number of bytes that have been received so far */
    				/*****************************************************************/
    				bytesReceived += rc;
    			}
    		}
    	} while (FALSE);
    	
    	/***********************************************************************/
    	/* Close down any open socket descriptors */
    	/***********************************************************************/
    	if (sd != -1)
    		close(sd);
    	if (buffer != NULL)
    		free(buffer);
    }
    

     

    Regarding "Rx Start of Frame Overruns",
    does it mean the count value of ”15.3.2.20.1.11 Rx Start of Frame Overruns” in TRM?

    If there are packet drops due to the frame overrun or the FIFO restriction in CPDMA,
    is there any workaround for this?
    Any advice would be appreciated.

    Best regards,
    Kanae

     

     

     

  • Hi Kanae,

    I am going to close this thread since you have another thread active that is working the same topic.

    https://e2e.ti.com/support/processors/f/791/p/864517/3201729#3201729

    To answer the last question is while there is a FIFO size restriction it is not the cause of the dropped packets. The overruns happen when the FIFO is full and the CPDMA does not have any RX descriptors available to queue up a DMA to DDR of the received packet. RX descriptor exhaustion can usually be solved by increasing the rx descriptor count. Which is what we are reviewing now in the above thread.

    Best Regards,

    Schuyler

  • Hi Schuyler,

    Thank you for your reply and confirmation.

    Our final goal is having to solve the UDP data packet loss.
    If you can keep support this issue in the following thread,
    it is no problem to close this thread. 

    Best regards,
    kanae