Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 05 Nov 2020 08:28:46 -0700
From:      Ian Lepore <ian@freebsd.org>
To:        Kurt Jaeger <pi@freebsd.org>, John F Carr <jfc@mit.edu>
Cc:        "freebsd-arm@freebsd.org" <arm@freebsd.org>
Subject:   Re: if_mvneta rx/tx byte counts wrong
Message-ID:  <9b2c7b09be7524fc736c741487b1cfb039ce6eda.camel@freebsd.org>
In-Reply-To: <20201104123909.GF53210@home.opsec.eu>
References:  <57104A54-AC82-4102-A637-116BF8D2E17D@gmail.com> <858E0BCD-C4E9-4997-A982-3C19DF21D161@exchange.mit.edu> <20201104123909.GF53210@home.opsec.eu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 2020-11-04 at 13:39 +0100, Kurt Jaeger wrote:
> Hi!
> 
> > If you view in hex,
> > 
> > $ printf '%x %x %x\n' 443193380410133 3813930959736 274877907008
> > 1931500019315 37800000378 4000000040
> > 
> > you see a 32 bit value duplicated into both halves of a 64 bit
> > value.
> 
> Ah. I think Juniper switches have the same problem -- I heard
> that this is a timing/atomicity problem of writing 64bit values
> on arm32.
> 

I don't think that's likely to be true.  We'd see the problem in a lot
more places, and the problem would be intermittent, which doesn't
appear to be the case here.

I would more tend to suspect the arm 32-bit implementation of
bus_space_read/write_8().

-- Ian





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9b2c7b09be7524fc736c741487b1cfb039ce6eda.camel>