From: David Howells Date: Wed, 15 Jun 2011 07:41:36 +0000 (+0200) Subject: batman-adv: count_real_packets() in batman-adv assumes char is signed X-Git-Tag: MMI-PSA29.97-13-9~18929^2~199^2~19 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=b2c44a53836559b5e2823aa215c979c33bc9e2db;p=GitHub%2FMotorolaMobilityLLC%2Fkernel-slsi.git batman-adv: count_real_packets() in batman-adv assumes char is signed count_real_packets() in batman-adv assumes char is signed, and returns -1 through it: net/batman-adv/routing.c: In function 'receive_bat_packet': net/batman-adv/routing.c:739: warning: comparison is always false due to limited range of data type Use int instead. Signed-off-by: David Howells [sven@narfation.org: Rebase on top of current version] Signed-off-by: Sven Eckelmann --- diff --git a/net/batman-adv/bitarray.c b/net/batman-adv/bitarray.c index 700ee4f7a945..3659a258ef49 100644 --- a/net/batman-adv/bitarray.c +++ b/net/batman-adv/bitarray.c @@ -26,8 +26,8 @@ /* returns true if the corresponding bit in the given seq_bits indicates true * and curr_seqno is within range of last_seqno */ -uint8_t get_bit_status(const unsigned long *seq_bits, uint32_t last_seqno, - uint32_t curr_seqno) +int get_bit_status(const unsigned long *seq_bits, uint32_t last_seqno, + uint32_t curr_seqno) { int32_t diff, word_offset, word_num; diff --git a/net/batman-adv/bitarray.h b/net/batman-adv/bitarray.h index e32eb2ddd2d2..277c037456e9 100644 --- a/net/batman-adv/bitarray.h +++ b/net/batman-adv/bitarray.h @@ -26,8 +26,8 @@ /* returns true if the corresponding bit in the given seq_bits indicates true * and curr_seqno is within range of last_seqno */ -uint8_t get_bit_status(const unsigned long *seq_bits, uint32_t last_seqno, - uint32_t curr_seqno); +int get_bit_status(const unsigned long *seq_bits, uint32_t last_seqno, + uint32_t curr_seqno); /* turn corresponding bit on, so we can remember that we got the packet */ void bit_mark(unsigned long *seq_bits, int32_t n); diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c index 934f1f2f86c6..d5ce644f8720 100644 --- a/net/batman-adv/routing.c +++ b/net/batman-adv/routing.c @@ -361,7 +361,7 @@ static void update_orig(struct bat_priv *bat_priv, struct orig_node *orig_node, const struct batman_packet *batman_packet, struct hard_iface *if_incoming, const unsigned char *tt_buff, int tt_buff_len, - char is_duplicate) + int is_duplicate) { struct neigh_node *neigh_node = NULL, *tmp_neigh_node = NULL; struct neigh_node *router = NULL; @@ -528,7 +528,7 @@ static int window_protected(struct bat_priv *bat_priv, * -1 the packet is old and has been received while the seqno window * was protected. Caller should drop it. */ -static char count_real_packets(const struct ethhdr *ethhdr, +static int count_real_packets(const struct ethhdr *ethhdr, const struct batman_packet *batman_packet, const struct hard_iface *if_incoming) { @@ -536,7 +536,7 @@ static char count_real_packets(const struct ethhdr *ethhdr, struct orig_node *orig_node; struct neigh_node *tmp_neigh_node; struct hlist_node *node; - char is_duplicate = 0; + int is_duplicate = 0; int32_t seq_diff; int need_update = 0; int set_mark, ret = -1; @@ -605,7 +605,7 @@ void receive_bat_packet(const struct ethhdr *ethhdr, char has_directlink_flag; char is_my_addr = 0, is_my_orig = 0, is_my_oldorig = 0; char is_broadcast = 0, is_bidirectional, is_single_hop_neigh; - char is_duplicate; + int is_duplicate; uint32_t if_incoming_seqno; /* Silently drop when the batman packet is actually not a