* [B.A.T.M.A.N.] [PATCH next] batman-adv: fix DAT candidate selection (must use vid)
@ 2013-09-21 10:28 Antonio Quartulli
2013-09-25 14:53 ` Marek Lindner
2016-03-10 17:48 ` Sven Eckelmann
0 siblings, 2 replies; 3+ messages in thread
From: Antonio Quartulli @ 2013-09-21 10:28 UTC (permalink / raw)
To: b.a.t.m.a.n
Now that DAT is VLAN aware, it must use the VID when
computing the DHT address of the candidate nodes where
an entry is going to be stored/retrieved.
Introduced by: 3e26722bc9f248ec4316749fc1957365c0fa5e4b
("batman-adv: make the Distributed ARP Table vlan aware")
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
---
distributed-arp-table.c | 19 ++++++++++++-------
1 file changed, 12 insertions(+), 7 deletions(-)
diff --git a/distributed-arp-table.c b/distributed-arp-table.c
index 6c8c393..d4b3940 100644
--- a/distributed-arp-table.c
+++ b/distributed-arp-table.c
@@ -530,11 +530,13 @@ static void batadv_choose_next_candidate(struct batadv_priv *bat_priv,
* Returns the candidate array of size BATADV_DAT_CANDIDATE_NUM.
*/
static struct batadv_dat_candidate *
-batadv_dat_select_candidates(struct batadv_priv *bat_priv, __be32 ip_dst)
+batadv_dat_select_candidates(struct batadv_priv *bat_priv, __be32 ip_dst,
+ unsigned short vid)
{
int select;
batadv_dat_addr_t last_max = BATADV_DAT_ADDR_MAX, ip_key;
struct batadv_dat_candidate *res;
+ struct batadv_dat_entry to_hash;
if (!bat_priv->orig_hash)
return NULL;
@@ -543,7 +545,10 @@ batadv_dat_select_candidates(struct batadv_priv *bat_priv, __be32 ip_dst)
if (!res)
return NULL;
- ip_key = (batadv_dat_addr_t)batadv_hash_dat(&ip_dst,
+ to_hash.ip = ip_dst;
+ to_hash.vid = vid;
+
+ ip_key = (batadv_dat_addr_t)batadv_hash_dat(&to_hash,
BATADV_DAT_ADDR_MAX);
batadv_dbg(BATADV_DBG_DAT, bat_priv,
@@ -572,7 +577,7 @@ batadv_dat_select_candidates(struct batadv_priv *bat_priv, __be32 ip_dst)
*/
static bool batadv_dat_send_data(struct batadv_priv *bat_priv,
struct sk_buff *skb, __be32 ip,
- int packet_subtype)
+ unsigned short vid, int packet_subtype)
{
int i;
bool ret = false;
@@ -581,7 +586,7 @@ static bool batadv_dat_send_data(struct batadv_priv *bat_priv,
struct sk_buff *tmp_skb;
struct batadv_dat_candidate *cand;
- cand = batadv_dat_select_candidates(bat_priv, ip);
+ cand = batadv_dat_select_candidates(bat_priv, ip, vid);
if (!cand)
goto out;
@@ -969,7 +974,7 @@ bool batadv_dat_snoop_outgoing_arp_request(struct batadv_priv *bat_priv,
ret = true;
} else {
/* Send the request to the DHT */
- ret = batadv_dat_send_data(bat_priv, skb, ip_dst,
+ ret = batadv_dat_send_data(bat_priv, skb, ip_dst, vid,
BATADV_P_DAT_DHT_GET);
}
out:
@@ -1092,8 +1097,8 @@ void batadv_dat_snoop_outgoing_arp_reply(struct batadv_priv *bat_priv,
/* Send the ARP reply to the candidates for both the IP addresses that
* the node obtained from the ARP reply
*/
- batadv_dat_send_data(bat_priv, skb, ip_src, BATADV_P_DAT_DHT_PUT);
- batadv_dat_send_data(bat_priv, skb, ip_dst, BATADV_P_DAT_DHT_PUT);
+ batadv_dat_send_data(bat_priv, skb, ip_src, vid, BATADV_P_DAT_DHT_PUT);
+ batadv_dat_send_data(bat_priv, skb, ip_dst, vid, BATADV_P_DAT_DHT_PUT);
}
/**
* batadv_dat_snoop_incoming_arp_reply - snoop the ARP reply and fill the local
--
1.8.1.5
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [B.A.T.M.A.N.] [PATCH next] batman-adv: fix DAT candidate selection (must use vid)
2013-09-21 10:28 [B.A.T.M.A.N.] [PATCH next] batman-adv: fix DAT candidate selection (must use vid) Antonio Quartulli
@ 2013-09-25 14:53 ` Marek Lindner
2016-03-10 17:48 ` Sven Eckelmann
1 sibling, 0 replies; 3+ messages in thread
From: Marek Lindner @ 2013-09-25 14:53 UTC (permalink / raw)
To: The list for a Better Approach To Mobile Ad-hoc Networking
[-- Attachment #1: Type: text/plain, Size: 999 bytes --]
On Saturday 21 September 2013 12:28:14 Antonio Quartulli wrote:
> diff --git a/distributed-arp-table.c b/distributed-arp-table.c
> index 6c8c393..d4b3940 100644
> --- a/distributed-arp-table.c
> +++ b/distributed-arp-table.c
> @@ -530,11 +530,13 @@ static void batadv_choose_next_candidate(struct
> batadv_priv *bat_priv, * Returns the candidate array of size
> BATADV_DAT_CANDIDATE_NUM.
> */
> static struct batadv_dat_candidate *
> -batadv_dat_select_candidates(struct batadv_priv *bat_priv, __be32 ip_dst)
> +batadv_dat_select_candidates(struct batadv_priv *bat_priv, __be32 ip_dst,
> + unsigned short vid)
> {
Kernel doc ?
> batadv_dbg(BATADV_DBG_DAT, bat_priv,
> @@ -572,7 +577,7 @@ batadv_dat_select_candidates(struct batadv_priv
> *bat_priv, __be32 ip_dst) */
> static bool batadv_dat_send_data(struct batadv_priv *bat_priv,
> struct sk_buff *skb, __be32 ip,
> - int packet_subtype)
> + unsigned short vid, int packet_subtype)
> {
Kernel doc ?
Cheers,
Marek
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 490 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [B.A.T.M.A.N.] [PATCH next] batman-adv: fix DAT candidate selection (must use vid)
2013-09-21 10:28 [B.A.T.M.A.N.] [PATCH next] batman-adv: fix DAT candidate selection (must use vid) Antonio Quartulli
2013-09-25 14:53 ` Marek Lindner
@ 2016-03-10 17:48 ` Sven Eckelmann
1 sibling, 0 replies; 3+ messages in thread
From: Sven Eckelmann @ 2016-03-10 17:48 UTC (permalink / raw)
To: b.a.t.m.a.n; +Cc: Antonio Quartulli
[-- Attachment #1: Type: text/plain, Size: 587 bytes --]
On Saturday 21 September 2013 12:28:14 Antonio Quartulli wrote:
> Now that DAT is VLAN aware, it must use the VID when
> computing the DHT address of the candidate nodes where
> an entry is going to be stored/retrieved.
>
> Introduced by: 3e26722bc9f248ec4316749fc1957365c0fa5e4b
> ("batman-adv: make the Distributed ARP Table vlan aware")
>
> Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
> ---
It looks like this patch doesn't apply anymore. Can you please resent it or
mark it correctly in patchwork [1].
Thanks,
Sven
[1] https://patchwork.open-mesh.org/patch/3427/
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-03-10 17:48 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-21 10:28 [B.A.T.M.A.N.] [PATCH next] batman-adv: fix DAT candidate selection (must use vid) Antonio Quartulli
2013-09-25 14:53 ` Marek Lindner
2016-03-10 17:48 ` Sven Eckelmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox