s390/cio: remove cmf related code relevant for 31 bit only
authorSebastian Ott <sebott@linux.vnet.ibm.com>
Thu, 12 Jan 2017 17:53:56 +0000 (18:53 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 16 Jan 2017 06:27:55 +0000 (07:27 +0100)
This is a leftover from the 31 bit era to avoid 64 bit divisions.
Get rid of it.

Reported-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/cmf.c

index 6b6386e..220491d 100644 (file)
@@ -1085,15 +1085,9 @@ static ssize_t cmb_show_avg_utilization(struct device *dev,
                      data.function_pending_time +
                      data.device_disconnect_time;
 
-       /* shift to avoid long long division */
-       while (-1ul < (data.elapsed_time | utilization)) {
-               utilization >>= 8;
-               data.elapsed_time >>= 8;
-       }
-
        /* calculate value in 0.1 percent units */
-       t = (unsigned long) data.elapsed_time / 1000;
-       u = (unsigned long) utilization / t;
+       t = data.elapsed_time / 1000;
+       u = utilization / t;
 
        return sprintf(buf, "%02ld.%01ld%%\n", u/ 10, u - (u/ 10) * 10);
 }