diff options
author | Juergen Gross <jgross@suse.com> | 2021-08-24 12:28:08 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-08-25 10:43:21 +0100 |
commit | 21631d2d741a64a073e167c27769e73bc7844a2f (patch) | |
tree | afd32b28914828e7d2054b67807c0b97eb91408d /net/smc | |
parent | 162081ec33c2686afa29d91bf8d302824aa846c7 (diff) | |
download | linux-stable-21631d2d741a64a073e167c27769e73bc7844a2f.tar.gz linux-stable-21631d2d741a64a073e167c27769e73bc7844a2f.tar.bz2 linux-stable-21631d2d741a64a073e167c27769e73bc7844a2f.zip |
xen/netfront: disentangle tx_skb_freelist
The tx_skb_freelist elements are in a single linked list with the
request id used as link reference. The per element link field is in a
union with the skb pointer of an in use request.
Move the link reference out of the union in order to enable a later
reuse of it for requests which need a populated skb pointer.
Rename add_id_to_freelist() and get_id_from_freelist() to
add_id_to_list() and get_id_from_list() in order to prepare using
those for other lists as well. Define ~0 as value to indicate the end
of a list and place that value into the link for a request not being
on the list.
When freeing a skb zero the skb pointer in the request. Use a NULL
value of the skb pointer instead of skb_entry_is_link() for deciding
whether a request has a skb linked to it.
Remove skb_entry_set_link() and open code it instead as it is really
trivial now.
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/smc')
0 files changed, 0 insertions, 0 deletions