diff options
author | Antonio Quartulli <ordex@autistici.org> | 2011-06-25 19:09:12 +0200 |
---|---|---|
committer | Marek Lindner <lindner_marek@yahoo.de> | 2011-07-05 14:28:54 +0200 |
commit | 8698529d209c43f6434592caf38733b84ccab5f3 (patch) | |
tree | 1ae000c69db75b4b1ce89d71c1b3c93121faab92 | |
parent | 5fbc1598c28555d2aa44bff0ac56ec3739401aff (diff) | |
download | lwn-8698529d209c43f6434592caf38733b84ccab5f3.tar.gz lwn-8698529d209c43f6434592caf38733b84ccab5f3.zip |
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>
-rw-r--r-- | net/batman-adv/routing.c | 2 | ||||
-rw-r--r-- | net/batman-adv/send.c | 4 | ||||
-rw-r--r-- | net/batman-adv/send.h | 2 | ||||
-rw-r--r-- | net/batman-adv/soft-interface.c | 2 |
4 files changed, 5 insertions, 5 deletions
diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c index 0ce090c9fe86..2cb98bed1586 100644 --- a/net/batman-adv/routing.c +++ b/net/batman-adv/routing.c @@ -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); diff --git a/net/batman-adv/send.c b/net/batman-adv/send.c index 7a2f0823f1c2..2f62b2e4a47b 100644 --- a/net/batman-adv/send.c +++ b/net/batman-adv/send.c @@ -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: diff --git a/net/batman-adv/send.h b/net/batman-adv/send.h index 633224ab028a..1f2d1e877663 100644 --- a/net/batman-adv/send.h +++ b/net/batman-adv/send.h @@ -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); diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index 2dcdbb7a236c..3f20332e1d38 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c @@ -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. */ |