The rte_atomic64_exchange operation for ppc_64 incorrectly linked
back to a 32 bit generic operation (__atomic_exchange_4) rather than
the 64 bit generic operation (__atomic_exchange_8). As a result,
only the link speed was passed to the application, not the link
state, link duplex, on link autoneg properties.
Good catch.
The first impact is the link status, but you can imagine applications
calling this, so I would prefer a title like "eal/ppc: fix 64bits
exchange operation".
WDYT ?
Sure, I can do that as a v2.
rte_atomic64_exchange has no unit test.
This kind of problem could (should?) have been caught in unit tests.
Maybe something to add later.
I was surprised too. I'll look at adding a change to the rte_atomic.c
test application.
Dave