x86/gen-cpuid: Fix Py2/3 compatibility
diff mbox series

Message ID 20200225165748.6531-1-andrew.cooper3@citrix.com
State New
Headers show
Series
  • x86/gen-cpuid: Fix Py2/3 compatibility
Related show

Commit Message

Andrew Cooper Feb. 25, 2020, 4:57 p.m. UTC
There is a fencepost error on the sys.version_info check which will break on
Python 3.0.  Reverse the logic to make py2 compatible with py3 (rather than
py3 compatible with py2) which will be more natural to follow as py2 usage
reduces.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Wei Liu <wl@xen.org>
CC: Roger Pau Monné <roger.pau@citrix.com>
---
 xen/tools/gen-cpuid.py | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

Comments

Wei Liu Feb. 25, 2020, 5:21 p.m. UTC | #1
On Tue, Feb 25, 2020 at 04:57:48PM +0000, Andrew Cooper wrote:
> There is a fencepost error on the sys.version_info check which will break on
> Python 3.0.  Reverse the logic to make py2 compatible with py3 (rather than
> py3 compatible with py2) which will be more natural to follow as py2 usage
> reduces.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Wei Liu <wl@xen.org>

Patch
diff mbox series

diff --git a/xen/tools/gen-cpuid.py b/xen/tools/gen-cpuid.py
index 362cdb5306..71ea78f4eb 100755
--- a/xen/tools/gen-cpuid.py
+++ b/xen/tools/gen-cpuid.py
@@ -3,9 +3,8 @@ 
 
 import sys, os, re
 
-if (sys.version_info > (3, 0)):
-    def xrange(x):
-        return range(x)
+if sys.version_info < (3, 0):
+    range = xrange
 
 class Fail(Exception):
     pass
@@ -330,10 +329,10 @@  def crunch_numbers(state):
         state.deep_deps[k] = featureset_to_uint32s(v, nr_entries)
 
     # Calculate the bitfield name declarations
-    for word in xrange(nr_entries):
+    for word in range(nr_entries):
 
         names = []
-        for bit in xrange(32):
+        for bit in range(32):
 
             name = state.names.get(word * 32 + bit, "")