Re: My transfer ring grew to 740 segments

David Laight
2025-03-14T19:15:39Z

On Tue, 11 Mar 2025 23:41:39 +0100
Michał Pecio <michal.pecio@gmail.com> wrote:

> Hi,
>
> This happened under a simple test meant to check if AMD "Promontory"
> chipset (from ASMedia) has the delayed restart bug (it does, rarely).

Several years ago I found a bug in one of the asmedia chips that it
only processed one entry from the command ring each time the doorbell
was rung (the normal transfers were fine).
It would get 'out of step' so every time you sent a new command an old one
got executed instead - very confusing.
I don't remember seeing the bug 'worked around' while I was actively looking
at the changes - so it may still be present.
So setting up the ethernet interface I was using only worked most of the time.
Reproducible by adding two commands but only ringing the bell once.
I fixed it by ringing the doorbell again in the completion interrupt path.

David