Skip to content

Commit

Permalink
batman-adv: print client flags in the local/global transtables output
Browse files Browse the repository at this point in the history
Since clients can have several flags on or off, this patches make them
appear in the local/global transtable output so that they can be checked
for debugging purposes.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
  • Loading branch information
Antonio Quartulli authored and Marek Lindner committed Aug 22, 2011
1 parent 3d393e4 commit df6edb9
Showing 1 changed file with 27 additions and 10 deletions.
37 changes: 27 additions & 10 deletions net/batman-adv/translation-table.c
Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,7 @@ int tt_local_seq_print_text(struct seq_file *seq, void *offset)

rcu_read_lock();
__hlist_for_each_rcu(node, head)
buf_size += 21;
buf_size += 29;
rcu_read_unlock();
}

Expand All @@ -351,8 +351,19 @@ int tt_local_seq_print_text(struct seq_file *seq, void *offset)
rcu_read_lock();
hlist_for_each_entry_rcu(tt_local_entry, node,
head, hash_entry) {
pos += snprintf(buff + pos, 22, " * %pM\n",
tt_local_entry->addr);
pos += snprintf(buff + pos, 30, " * %pM "
"[%c%c%c%c%c]\n",
tt_local_entry->addr,
(tt_local_entry->flags &
TT_CLIENT_ROAM ? 'R' : '.'),
(tt_local_entry->flags &
TT_CLIENT_NOPURGE ? 'P' : '.'),
(tt_local_entry->flags &
TT_CLIENT_NEW ? 'N' : '.'),
(tt_local_entry->flags &
TT_CLIENT_PENDING ? 'X' : '.'),
(tt_local_entry->flags &
TT_CLIENT_WIFI ? 'W' : '.'));
}
rcu_read_unlock();
}
Expand Down Expand Up @@ -589,8 +600,8 @@ int tt_global_seq_print_text(struct seq_file *seq, void *offset)
seq_printf(seq,
"Globally announced TT entries received via the mesh %s\n",
net_dev->name);
seq_printf(seq, " %-13s %s %-15s %s\n",
"Client", "(TTVN)", "Originator", "(Curr TTVN)");
seq_printf(seq, " %-13s %s %-15s %s %s\n",
"Client", "(TTVN)", "Originator", "(Curr TTVN)", "Flags");

buf_size = 1;
/* Estimate length for: " * xx:xx:xx:xx:xx:xx (ttvn) via
Expand All @@ -600,7 +611,7 @@ int tt_global_seq_print_text(struct seq_file *seq, void *offset)

rcu_read_lock();
__hlist_for_each_rcu(node, head)
buf_size += 59;
buf_size += 67;
rcu_read_unlock();
}

Expand All @@ -619,14 +630,20 @@ int tt_global_seq_print_text(struct seq_file *seq, void *offset)
rcu_read_lock();
hlist_for_each_entry_rcu(tt_global_entry, node,
head, hash_entry) {
pos += snprintf(buff + pos, 61,
" * %pM (%3u) via %pM (%3u)\n",
tt_global_entry->addr,
pos += snprintf(buff + pos, 69,
" * %pM (%3u) via %pM (%3u) "
"[%c%c%c]\n", tt_global_entry->addr,
tt_global_entry->ttvn,
tt_global_entry->orig_node->orig,
(uint8_t) atomic_read(
&tt_global_entry->orig_node->
last_ttvn));
last_ttvn),
(tt_global_entry->flags &
TT_CLIENT_ROAM ? 'R' : '.'),
(tt_global_entry->flags &
TT_CLIENT_PENDING ? 'X' : '.'),
(tt_global_entry->flags &
TT_CLIENT_WIFI ? 'W' : '.'));
}
rcu_read_unlock();
}
Expand Down

0 comments on commit df6edb9

Please sign in to comment.