Thread (12 messages) flat view 12 messages, 3 authors, 2016-06-24

RE: [iproute PATCH v3 6/6] misc/ifstat: simplify unsigned value comparison

From: David Laight <hidden>
Date: 2016-06-24 09:22:44

From: Phil Sutter
quoted hunk ↗ jump to hunk
Sent: 23 June 2016 18:34

By directly comparing the value of both unsigned variables, casting to
signed becomes unnecessary.

This also fixes for compiling with older versions of gcc (at least
<=3.4.6) which emit the following warning:

| ifstat.c: In function `update_db':
| ifstat.c:542: warning: comparison is always false due to limited range of data type

Signed-off-by: Phil Sutter <phil@nwl.cc>
---
 misc/ifstat.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/misc/ifstat.c b/misc/ifstat.c
index abbb4e732fcef..9a44da487599e 100644
--- a/misc/ifstat.c
+++ b/misc/ifstat.c
@@ -539,7 +539,7 @@ static void update_db(int interval)
 				int i;

 				for (i = 0; i < MAXS; i++) {
-					if ((long)(h1->ival[i] - n->ival[i]) < 0) {
+					if (h1->ival[i] < n->ival[i]) {
 						memset(n->ival, 0, sizeof(n->ival));
 						break;
That isn't the same check.
The original code is using modulo arithmetic.

	David
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help