Gerd Hoffmann wrote:Gerd, in change 11196:b85da7cd9ea5 "front: Fix rx buffer leak whenThe function has an effect in page flipping mode only. It walks the
tearing down an interface." you added a call to
"add_id_to_freelist(np->rx_skbs, id);". However, rx_skbs doesn't have
an extra entry for the list head, and there's never any corresponding
get_id_from_freelist(np->rx_skbs). What should it be?
whole list of rx skbufs (id is the loop variable ...), checks whenever
they are handed out to the frontend driver to fill in packet data and
not returned yet, and if so reclaim them ...
Yes, but why use add_id_to_freelist? rx_skbs are not being used on a
freelist anywhere else. It just means the rx_skb array gets filled with
small integers, but the rest of the code assumes they're either NULL or
an skb pointer.