On Sat, Oct 22, 2022 at 11:01:01AM +0200, Ard Biesheuvel wrote: > But the point is that the new element we are adding has the same > properties as the one we want to avoid replacing inadvertently, No, we're removing the oldest element we found. The new one is anything but we don't compare it to slot_cache which we're about to remove. > and if the cmpxchg() failed, we just drop it on the floor. Yeah, I guess the intent here was: oh well, we'll log that thing again because our "throttling cache" didn't manage to enter it. > So instead of dropping 'our' new element, we now drop 'the other' new > element. Aha, this is what you mean with logging something twice. That other new element gets dropped so if it happens again, it'll get logged and if it then gets entered in the cache properly, then it gets ignored on the next logging run. Oh well, fine with me. > The correct approach here would be to rerun the selection loop on > failure, but I doubt whether it is worth it. This is just a fancy rate > limiter. Yap, exactly. Ok, so I'll try to summarize what we talked here in the commit message so that it is written down somewhere for later. Thx. -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette