mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-19 11:04:00 +08:00
batman-adv: add_bcast_packet_to_list() takes the sending delay as parameter
In order to make possible to use the broadcast list for delayed sendings the "delay" parameter is now provided instead of using 1 as hardcoded value. Signed-off-by: Antonio Quartulli <ordex@autistici.org> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
This commit is contained in:
parent
5fbc1598c2
commit
8698529d20
@ -1677,7 +1677,7 @@ int recv_bcast_packet(struct sk_buff *skb, struct hard_iface *recv_if)
|
||||
spin_unlock_bh(&orig_node->bcast_seqno_lock);
|
||||
|
||||
/* rebroadcast packet */
|
||||
add_bcast_packet_to_list(bat_priv, skb);
|
||||
add_bcast_packet_to_list(bat_priv, skb, 1);
|
||||
|
||||
/* broadcast for me */
|
||||
interface_rx(recv_if->soft_iface, skb, recv_if, hdr_size);
|
||||
|
@ -455,7 +455,7 @@ static void _add_bcast_packet_to_list(struct bat_priv *bat_priv,
|
||||
* The skb is not consumed, so the caller should make sure that the
|
||||
* skb is freed. */
|
||||
int add_bcast_packet_to_list(struct bat_priv *bat_priv,
|
||||
const struct sk_buff *skb)
|
||||
const struct sk_buff *skb, unsigned long delay)
|
||||
{
|
||||
struct hard_iface *primary_if = NULL;
|
||||
struct forw_packet *forw_packet;
|
||||
@ -492,7 +492,7 @@ int add_bcast_packet_to_list(struct bat_priv *bat_priv,
|
||||
/* how often did we send the bcast packet ? */
|
||||
forw_packet->num_packets = 0;
|
||||
|
||||
_add_bcast_packet_to_list(bat_priv, forw_packet, 1);
|
||||
_add_bcast_packet_to_list(bat_priv, forw_packet, delay);
|
||||
return NETDEV_TX_OK;
|
||||
|
||||
packet_free:
|
||||
|
@ -31,7 +31,7 @@ void schedule_forward_packet(struct orig_node *orig_node,
|
||||
int directlink,
|
||||
struct hard_iface *if_outgoing);
|
||||
int add_bcast_packet_to_list(struct bat_priv *bat_priv,
|
||||
const struct sk_buff *skb);
|
||||
const struct sk_buff *skb, unsigned long delay);
|
||||
void send_outstanding_bat_packet(struct work_struct *work);
|
||||
void purge_outstanding_packets(struct bat_priv *bat_priv,
|
||||
const struct hard_iface *hard_iface);
|
||||
|
@ -634,7 +634,7 @@ static int interface_tx(struct sk_buff *skb, struct net_device *soft_iface)
|
||||
bcast_packet->seqno =
|
||||
htonl(atomic_inc_return(&bat_priv->bcast_seqno));
|
||||
|
||||
add_bcast_packet_to_list(bat_priv, skb);
|
||||
add_bcast_packet_to_list(bat_priv, skb, 1);
|
||||
|
||||
/* a copy is stored in the bcast list, therefore removing
|
||||
* the original skb. */
|
||||
|
Loading…
Reference in New Issue
Block a user