BeagleBone slow inbound net I/O
Paul Mather
paul at gromit.dlib.vt.edu
Sat Mar 14 15:42:36 UTC 2015
On Mar 14, 2015, at 9:23 AM, Ian Lepore <ian at freebsd.org> wrote:
> On Sat, 2015-03-14 at 03:15 -0400, Brett Wynkoop wrote:
>> On Fri, 13 Mar 2015 23:02:25 -0700
>> Tim Kientzle <tim at kientzle.com> wrote:
>>
>>>
>>>> On Mar 11, 2015, at 1:51 PM, Brett Wynkoop <freebsd-arm at wynn.com>
>>>> wrote:
>>>>
>>>> Have I managed to find a network driver issue? Any ideas how to
>>>> gather more information to help get to the bottom of things?
>>>>
>>>
>>> $ sysctl dev.cpsw
>>>
>>> This will dump detailed statistics from the Ethernet hardware and
>>> driver.
>>>
>>> Tim
>>>
>>
>> After a short time while doing nfs i/o
>>
>>
>> [wynkoop at beaglebone ~]$ sysctl dev.cpsw | grep -i error
>> dev.cpsw.0.stats.RxCrcErrors: 40
>> dev.cpsw.0.stats.RxAlignErrors: 32
>> dev.cpsw.0.stats.CarrierSenseErrors: 0
> [...]
>> [wynkoop at beaglebone ~]$ sysctl dev.cpsw | grep -i error
>> dev.cpsw.0.stats.RxCrcErrors: 262
>> dev.cpsw.0.stats.RxAlignErrors: 231
>> dev.cpsw.0.stats.CarrierSenseErrors: 0
>> [wynkoop at beaglebone ~]$
>>
>> So we can see climbing errors. I am not sure how this compares to the
>> results of others. The above was during the first few minutes of a
>> buildworld from an nfs share.
>>
>> At the same time on the console:
>>
>> Mar 14 03:07:47 beaglebone amd[1163]: mountd rpc failed: RPC: Can't
>> decode result Mar 14 03:11:48 beaglebone amd[1399]: mountd rpc failed:
>> RPC: Can't decode result
>>
>> which makes sense with the above errors I think.
>
> On mine:
>
> root at bb:/usr/ports/benchmarks/iperf # sysctl dev.cpsw | grep Err
> dev.cpsw.0.stats.RxCrcErrors: 0
> dev.cpsw.0.stats.RxAlignErrors: 0
> dev.cpsw.0.stats.CarrierSenseErrors: 0
>
> That's after 3 days of uptime including doing builds over nfs, and all
> the iperf testing I was doing yesterday (no errors after megabytes of
> transfers).
Here is another data point from my BBB:
pmather at beaglebone:~ % sysctl dev.cpsw
dev.cpsw.%parent:
dev.cpsw.0.%desc: 3-port Switch Ethernet Subsystem
dev.cpsw.0.%driver: cpsw
dev.cpsw.0.%location:
dev.cpsw.0.%pnpinfo: name=ethernet at 4A100000 compat=ti,cpsw
dev.cpsw.0.%parent: simplebus0
dev.cpsw.0.attachedSecs: 135771
dev.cpsw.0.uptime: 135750
dev.cpsw.0.stats.GoodRxFrames: 4200799
dev.cpsw.0.stats.BroadcastRxFrames: 8326
dev.cpsw.0.stats.MulticastRxFrames: 132766
dev.cpsw.0.stats.PauseRxFrames: 0
dev.cpsw.0.stats.RxCrcErrors: 0
dev.cpsw.0.stats.RxAlignErrors: 0
dev.cpsw.0.stats.OversizeRxFrames: 0
dev.cpsw.0.stats.RxJabbers: 0
dev.cpsw.0.stats.ShortRxFrames: 0
dev.cpsw.0.stats.RxFragments: 0
dev.cpsw.0.stats.RxOctets: 6141208229
dev.cpsw.0.stats.GoodTxFrames: 2064557
dev.cpsw.0.stats.BroadcastTxFrames: 111
dev.cpsw.0.stats.MulticastTxFrames: 0
dev.cpsw.0.stats.PauseTxFrames: 0
dev.cpsw.0.stats.DeferredTxFrames: 0
dev.cpsw.0.stats.CollisionsTxFrames: 0
dev.cpsw.0.stats.SingleCollisionTxFrames: 0
dev.cpsw.0.stats.MultipleCollisionTxFrames: 0
dev.cpsw.0.stats.ExcessiveCollisions: 0
dev.cpsw.0.stats.LateCollisions: 0
dev.cpsw.0.stats.TxUnderrun: 0
dev.cpsw.0.stats.CarrierSenseErrors: 0
dev.cpsw.0.stats.TxOctets: 203621590
dev.cpsw.0.stats.RxTx64OctetFrames: 82180
dev.cpsw.0.stats.RxTx65to127OctetFrames: 2054745
dev.cpsw.0.stats.RxTx128to255OctetFrames: 10086
dev.cpsw.0.stats.RxTx256to511OctetFrames: 50051
dev.cpsw.0.stats.RxTx512to1024OctetFrames: 303
dev.cpsw.0.stats.RxTx1024upOctetFrames: 4067992
dev.cpsw.0.stats.NetOctets: 6344829819
dev.cpsw.0.stats.RxStartOfFrameOverruns: 1708
dev.cpsw.0.stats.RxMiddleOfFrameOverruns: 0
dev.cpsw.0.stats.RxDmaOverruns: 0
dev.cpsw.0.queue.tx.totalBuffers: 128
dev.cpsw.0.queue.tx.activeBuffers: 2
dev.cpsw.0.queue.tx.maxActiveBuffers: 7
dev.cpsw.0.queue.tx.availBuffers: 126
dev.cpsw.0.queue.tx.maxAvailBuffers: 128
dev.cpsw.0.queue.tx.totalEnqueued: 2128785
dev.cpsw.0.queue.tx.totalDequeued: 2128783
dev.cpsw.0.queue.tx.longestChain: 4
dev.cpsw.0.queue.rx.totalBuffers: 384
dev.cpsw.0.queue.rx.activeBuffers: 384
dev.cpsw.0.queue.rx.maxActiveBuffers: 384
dev.cpsw.0.queue.rx.availBuffers: 0
dev.cpsw.0.queue.rx.maxAvailBuffers: 55
dev.cpsw.0.queue.rx.totalEnqueued: 4201184
dev.cpsw.0.queue.rx.totalDequeued: 4200800
dev.cpsw.0.queue.rx.longestChain: 0
dev.cpsw.0.watchdog.resets: 0
pmather at beaglebone:~ % sysctl dev.cpsw | grep -i error
dev.cpsw.0.stats.RxCrcErrors: 0
dev.cpsw.0.stats.RxAlignErrors: 0
dev.cpsw.0.stats.CarrierSenseErrors: 0
pmather at beaglebone:~ % uptime
11:19AM up 1 day, 13:43, 1 users, load averages: 0.93, 0.88, 0.81
The above is also after doing some iperf and inbound transfer tests yesterday.
> I wonder if your power supply is failing and injecting transient
> glitches under heavy load or something?
Hopefully, the OP is not powering the system via the OTG connector. I always found my BBB to be somewhat flaky when powered that way.
Cheers,
Paul.
More information about the freebsd-arm
mailing list