• Magnus Karlsson's avatar
    selftests/xsk: adjust packet pacing for multi-buffer support · 7cd6df4f
    Magnus Karlsson authored
    Modify the packet pacing algorithm so that it works with multi-buffer
    packets. This algorithm makes sure we do not send too many buffers to
    the receiving thread so that packets have to be dropped. The previous
    algorithm made the assumption that each packet only consumes one
    buffer, but that is not true anymore when multi-buffer support gets
    added. Instead, we find out what the largest packet size is in the
    packet stream and assume that each packet will consume this many
    buffers. This is conservative and overly cautious as there might be
    smaller packets in the stream that need fewer buffers per packet. But
    it keeps the algorithm simple.
    
    Also simplify it by removing the pthread conditional and just test if
    there is enough space in the Rx thread before trying to send one more
    batch. Also makes the tests run faster.
    Signed-off-by: default avatarMagnus Karlsson <magnus.karlsson@intel.com>
    Link: https://lore.kernel.org/r/20230516103109.3066-11-magnus.karlsson@gmail.comSigned-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
    7cd6df4f
xskxceiver.h 3.76 KB