From: Simon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de>
To: The list for a Better Approach To Mobile Ad-hoc Networking
<b.a.t.m.a.n@lists.open-mesh.org>
Subject: Re: [B.A.T.M.A.N.] [PATCHv2] batman-adv: fix visualization output without neighbors on the primary interface
Date: Sun, 6 May 2012 22:14:35 +0200 [thread overview]
Message-ID: <20120506201435.GA27416@pandem0nium> (raw)
In-Reply-To: <7f84c7e913b9a0c9a22cc19864c6b7d9e2a347de.1336233103.git.mschiffer@universe-factory.net>
[-- Attachment #1: Type: text/plain, Size: 2876 bytes --]
Acked-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Your patch does the trick, although I think this ugly function could use a rewrite.
First counting bytes and then allocating this size to do exactly the same thing again
is not really good style. If you would like to volunteer to do this job (or plan to
work more on vis), please tell me, otherwise I'll put it in on my TODO list.
Thanks
Simon
On Sat, May 05, 2012 at 05:51:53PM +0200, Matthias Schiffer wrote:
> The primary entry and the corresponding secondary entries are missing when there
> are no neighbors on the primary interface. This also causes the TT entries to
> miss and makes nodes with multiply secondary interface fall apart since there
> is no way to see they are related without a primary entry.
>
> Fix this by always emitting a primary entry.
>
> Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
> ---
> vis.c | 21 ++++++++++++++-------
> 1 file changed, 14 insertions(+), 7 deletions(-)
>
> diff --git a/vis.c b/vis.c
> index cec216f..c515927 100644
> --- a/vis.c
> +++ b/vis.c
> @@ -207,7 +207,6 @@ int vis_seq_print_text(struct seq_file *seq, void *offset)
> int vis_server = atomic_read(&bat_priv->vis_mode);
> size_t buff_pos, buf_size;
> char *buff;
> - int compare;
>
> primary_if = primary_if_get_selected(bat_priv);
> if (!primary_if)
> @@ -228,14 +227,18 @@ int vis_seq_print_text(struct seq_file *seq, void *offset)
> entries = (struct vis_info_entry *)
> ((char *)packet + sizeof(*packet));
>
> + vis_data_insert_interface(packet->vis_orig,
> + &vis_if_list, true);
> +
> for (j = 0; j < packet->entries; j++) {
> if (entries[j].quality == 0)
> continue;
> - compare =
> - compare_eth(entries[j].src, packet->vis_orig);
> + if (compare_eth(entries[j].src,
> + packet->vis_orig))
> + continue;
> vis_data_insert_interface(entries[j].src,
> &vis_if_list,
> - compare);
> + false);
> }
>
> hlist_for_each_entry(entry, pos, &vis_if_list, list) {
> @@ -276,14 +279,18 @@ int vis_seq_print_text(struct seq_file *seq, void *offset)
> entries = (struct vis_info_entry *)
> ((char *)packet + sizeof(*packet));
>
> + vis_data_insert_interface(packet->vis_orig,
> + &vis_if_list, true);
> +
> for (j = 0; j < packet->entries; j++) {
> if (entries[j].quality == 0)
> continue;
> - compare =
> - compare_eth(entries[j].src, packet->vis_orig);
> + if (compare_eth(entries[j].src,
> + packet->vis_orig))
> + continue;
> vis_data_insert_interface(entries[j].src,
> &vis_if_list,
> - compare);
> + false);
> }
>
> hlist_for_each_entry(entry, pos, &vis_if_list, list) {
> --
> 1.7.10.1
>
>
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
next prev parent reply other threads:[~2012-05-06 20:14 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-05 15:05 [B.A.T.M.A.N.] [PATCH] batman-adv: fix visualization output without neighbors on the primary interface Matthias Schiffer
2012-05-05 15:29 ` Sven Eckelmann
2012-05-05 15:49 ` Matthias Schiffer
2012-05-05 15:51 ` [B.A.T.M.A.N.] [PATCHv2] " Matthias Schiffer
2012-05-06 20:14 ` Simon Wunderlich [this message]
2012-05-07 4:35 ` Matthias Schiffer
2012-05-07 6:40 ` Marek Lindner
2012-05-07 11:10 ` Matthias Schiffer
2012-05-07 11:28 ` Sven Eckelmann
2012-05-08 6:04 ` Marek Lindner
2012-05-08 12:51 ` Matthias Schiffer
2012-05-08 20:52 ` Guido Iribarren
2012-05-09 11:33 ` Marek Lindner
2012-05-09 16:10 ` Martin Hundebøll
2012-05-10 19:47 ` Matthias Schiffer
2012-05-10 20:19 ` Marek Lindner
2012-05-10 20:46 ` Matthias Schiffer
2012-05-07 6:43 ` Sven Eckelmann
2012-05-07 6:43 ` Marek Lindner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120506201435.GA27416@pandem0nium \
--to=simon.wunderlich@s2003.tu-chemnitz.de \
--cc=b.a.t.m.a.n@lists.open-mesh.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox