Browse code

Fix 18151, by converting float to int

(cherry picked from commit 6a76a9299df432df54b22224f27f19fcff4f75ae)

Michael Scherer authored on 2016/10/23 08:32:04
Showing 1 changed files
... ...
@@ -1009,11 +1009,11 @@ class LinuxHardware(Hardware):
1009 1009
             key = data[0]
1010 1010
             if key in self.ORIGINAL_MEMORY_FACTS:
1011 1011
                 val = data[1].strip().split(' ')[0]
1012
-                self.facts["%s_mb" % key.lower()] = int(val) / 1024
1012
+                self.facts["%s_mb" % key.lower()] = int(val) // 1024
1013 1013
 
1014 1014
             if key in self.MEMORY_FACTS:
1015 1015
                  val = data[1].strip().split(' ')[0]
1016
-                 memstats[key.lower()] = int(val) / 1024
1016
+                 memstats[key.lower()] = int(val) // 1024
1017 1017
 
1018 1018
         if None not in (memstats.get('memtotal'), memstats.get('memfree')):
1019 1019
             memstats['real:used'] = memstats['memtotal'] - memstats['memfree']
... ...
@@ -1538,10 +1538,10 @@ class SunOSHardware(Hardware):
1538 1538
         reserved = int(out.split()[5][:-1])
1539 1539
         used = int(out.split()[8][:-1])
1540 1540
         free = int(out.split()[10][:-1])
1541
-        self.facts['swapfree_mb'] = free / 1024
1542
-        self.facts['swaptotal_mb'] = (free + used) / 1024
1543
-        self.facts['swap_allocated_mb'] = allocated / 1024
1544
-        self.facts['swap_reserved_mb'] = reserved / 1024
1541
+        self.facts['swapfree_mb'] = free // 1024
1542
+        self.facts['swaptotal_mb'] = (free + used) // 1024
1543
+        self.facts['swap_allocated_mb'] = allocated // 1024
1544
+        self.facts['swap_reserved_mb'] = reserved // 1024
1545 1545
 
1546 1546
     @timeout(10)
1547 1547
     def get_mount_facts(self):
... ...
@@ -1612,8 +1612,8 @@ class OpenBSDHardware(Hardware):
1612 1612
         #  0 0 0  47512   28160   51   0   0   0   0   0   1   0  116    89   17  0  1 99
1613 1613
         rc, out, err = self.module.run_command("/usr/bin/vmstat")
1614 1614
         if rc == 0:
1615
-            self.facts['memfree_mb'] = int(out.splitlines()[-1].split()[4]) / 1024
1616
-            self.facts['memtotal_mb'] = int(self.sysctl['hw.usermem']) / 1024 / 1024
1615
+            self.facts['memfree_mb'] = int(out.splitlines()[-1].split()[4]) // 1024
1616
+            self.facts['memtotal_mb'] = int(self.sysctl['hw.usermem']) // 1024 // 1024
1617 1617
 
1618 1618
         # Get swapctl info. swapctl output looks like:
1619 1619
         # total: 69268 1K-blocks allocated, 0 used, 69268 available
... ...
@@ -1623,8 +1623,8 @@ class OpenBSDHardware(Hardware):
1623 1623
         if rc == 0:
1624 1624
             swaptrans = maketrans(' ', ' ')
1625 1625
             data = out.split()
1626
-            self.facts['swapfree_mb'] = int(data[-2].translate(swaptrans, "kmg")) / 1024
1627
-            self.facts['swaptotal_mb'] = int(data[1].translate(swaptrans, "kmg")) / 1024
1626
+            self.facts['swapfree_mb'] = int(data[-2].translate(swaptrans, "kmg")) // 1024
1627
+            self.facts['swaptotal_mb'] = int(data[1].translate(swaptrans, "kmg")) // 1024
1628 1628
 
1629 1629
     def get_processor_facts(self):
1630 1630
         processor = []
... ...
@@ -1699,8 +1699,8 @@ class FreeBSDHardware(Hardware):
1699 1699
                 pagecount = int(data[1])
1700 1700
             if 'vm.stats.vm.v_free_count' in line:
1701 1701
                 freecount = int(data[1])
1702
-        self.facts['memtotal_mb'] = pagesize * pagecount / 1024 / 1024
1703
-        self.facts['memfree_mb'] = pagesize * freecount / 1024 / 1024
1702
+        self.facts['memtotal_mb'] = pagesize * pagecount // 1024 // 1024
1703
+        self.facts['memfree_mb'] = pagesize * freecount // 1024 // 1024
1704 1704
         # Get swapinfo.  swapinfo output looks like:
1705 1705
         # Device          1M-blocks     Used    Avail Capacity
1706 1706
         # /dev/ada0p3        314368        0   314368     0%
... ...
@@ -1711,8 +1711,8 @@ class FreeBSDHardware(Hardware):
1711 1711
             lines.pop()
1712 1712
         data = lines[-1].split()
1713 1713
         if data[0] != 'Device':
1714
-            self.facts['swaptotal_mb'] = int(data[1]) / 1024
1715
-            self.facts['swapfree_mb'] = int(data[3]) / 1024
1714
+            self.facts['swaptotal_mb'] = int(data[1]) // 1024
1715
+            self.facts['swapfree_mb'] = int(data[3]) // 1024
1716 1716
 
1717 1717
     @timeout(10)
1718 1718
     def get_mount_facts(self):
... ...
@@ -1841,7 +1841,7 @@ class NetBSDHardware(Hardware):
1841 1841
             key = data[0]
1842 1842
             if key in NetBSDHardware.MEMORY_FACTS:
1843 1843
                 val = data[1].strip().split(' ')[0]
1844
-                self.facts["%s_mb" % key.lower()] = int(val) / 1024
1844
+                self.facts["%s_mb" % key.lower()] = int(val) // 1024
1845 1845
 
1846 1846
     @timeout(10)
1847 1847
     def get_mount_facts(self):
... ...
@@ -1911,8 +1911,8 @@ class AIX(Hardware):
1911 1911
                 pagecount = int(data[0])
1912 1912
             if 'free pages' in line:
1913 1913
                 freecount = int(data[0])
1914
-        self.facts['memtotal_mb'] = pagesize * pagecount / 1024 / 1024
1915
-        self.facts['memfree_mb'] = pagesize * freecount / 1024 / 1024
1914
+        self.facts['memtotal_mb'] = pagesize * pagecount // 1024 // 1024
1915
+        self.facts['memfree_mb'] = pagesize * freecount // 1024 // 1024
1916 1916
         # Get swapinfo.  swapinfo output looks like:
1917 1917
         # Device          1M-blocks     Used    Avail Capacity
1918 1918
         # /dev/ada0p3        314368        0   314368     0%
... ...
@@ -2053,12 +2053,12 @@ class HPUX(Hardware):
2053 2053
         pagesize = 4096
2054 2054
         rc, out, err = self.module.run_command("/usr/bin/vmstat | tail -1", use_unsafe_shell=True)
2055 2055
         data = int(re.sub(' +',' ',out).split(' ')[5].strip())
2056
-        self.facts['memfree_mb'] = pagesize * data / 1024 / 1024
2056
+        self.facts['memfree_mb'] = pagesize * data // 1024 // 1024
2057 2057
         if self.facts['architecture'] == '9000/800':
2058 2058
             try:
2059 2059
                 rc, out, err = self.module.run_command("grep Physical /var/adm/syslog/syslog.log")
2060 2060
                 data = re.search('.*Physical: ([0-9]*) Kbytes.*',out).groups()[0].strip()
2061
-                self.facts['memtotal_mb'] = int(data) / 1024
2061
+                self.facts['memtotal_mb'] = int(data) // 1024
2062 2062
             except AttributeError:
2063 2063
                 #For systems where memory details aren't sent to syslog or the log has rotated, use parsed
2064 2064
                 #adb output. Unfortunately /dev/kmem doesn't have world-read, so this only works as root.
... ...
@@ -2149,11 +2149,11 @@ class Darwin(Hardware):
2149 2149
             self.facts['processor_cores'] = self.sysctl['hw.physicalcpu']
2150 2150
 
2151 2151
     def get_memory_facts(self):
2152
-        self.facts['memtotal_mb'] = int(self.sysctl['hw.memsize']) / 1024 / 1024
2152
+        self.facts['memtotal_mb'] = int(self.sysctl['hw.memsize']) // 1024 // 1024
2153 2153
 
2154 2154
         rc, out, err = self.module.run_command("sysctl hw.usermem")
2155 2155
         if rc == 0:
2156
-            self.facts['memfree_mb'] = int(out.splitlines()[-1].split()[1]) / 1024 / 1024
2156
+            self.facts['memfree_mb'] = int(out.splitlines()[-1].split()[1]) // 1024 // 1024
2157 2157
 
2158 2158
 
2159 2159
 class Network(Facts):