summaryrefslogtreecommitdiffstats
path: root/drivers/atm/firestream.c
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2010-09-05 09:00:23 +0000
committerDavid S. Miller <davem@davemloft.net>2010-09-06 18:48:42 -0700
commita0ece28539d49c9bdcc6da0bbb26771dceb57581 (patch)
treec16f0a52b3008a315b1d814ced5a295afe12ce8d /drivers/atm/firestream.c
parent29af9309dba25077f711f5f975977714bc43a0c3 (diff)
downloadlinux-stable-a0ece28539d49c9bdcc6da0bbb26771dceb57581.tar.gz
linux-stable-a0ece28539d49c9bdcc6da0bbb26771dceb57581.tar.bz2
linux-stable-a0ece28539d49c9bdcc6da0bbb26771dceb57581.zip
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>
Diffstat (limited to 'drivers/atm/firestream.c')
-rw-r--r--drivers/atm/firestream.c4
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)
#define ROUND_NEAREST 3
/********** make rate (not quite as much fun as Horizon) **********/
-static unsigned int make_rate (unsigned int rate, int r,
- u16 * bits, unsigned int * actual)
+static int make_rate(unsigned int rate, int r,
+ u16 *bits, unsigned int *actual)
{
unsigned char exp = -1; /* hush gcc */
unsigned int man = -1; /* hush gcc */