diff options
author | Julia Lawall <julia@diku.dk> | 2010-09-05 05:00:23 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-09-06 21:48:42 -0400 |
commit | a0ece28539d49c9bdcc6da0bbb26771dceb57581 (patch) | |
tree | c16f0a52b3008a315b1d814ced5a295afe12ce8d | |
parent | 29af9309dba25077f711f5f975977714bc43a0c3 (diff) |
drivers/atm/firestream.c: Fix unsigned return type
The function has an unsigned return type, but returns a negative constant
to indicate an error condition. The result of calling the function is
always stored in a variable of type (signed) int, and thus unsigned can be
dropped from the return type.
A sematic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@exists@
identifier f;
constant C;
@@
unsigned f(...)
{ <+...
* return -C;
...+> }
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/atm/firestream.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/atm/firestream.c b/drivers/atm/firestream.c index 8717809787fb..5d86bb803e94 100644 --- a/drivers/atm/firestream.c +++ b/drivers/atm/firestream.c | |||
@@ -444,8 +444,8 @@ static inline void fs_kfree_skb (struct sk_buff * skb) | |||
444 | #define ROUND_NEAREST 3 | 444 | #define ROUND_NEAREST 3 |
445 | /********** make rate (not quite as much fun as Horizon) **********/ | 445 | /********** make rate (not quite as much fun as Horizon) **********/ |
446 | 446 | ||
447 | static unsigned int make_rate (unsigned int rate, int r, | 447 | static int make_rate(unsigned int rate, int r, |
448 | u16 * bits, unsigned int * actual) | 448 | u16 *bits, unsigned int *actual) |
449 | { | 449 | { |
450 | unsigned char exp = -1; /* hush gcc */ | 450 | unsigned char exp = -1; /* hush gcc */ |
451 | unsigned int man = -1; /* hush gcc */ | 451 | unsigned int man = -1; /* hush gcc */ |