[PATCH 3/5] perf: net_dropmonitor: Do not assume ordering ofdictionaries

From: Ben Hutchings
Date: Mon May 20 2013 - 20:45:44 EST


The sort order of dictionaries in Python is undocumented. Use
tuples instead, which are documented to be lexically ordered.

Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
---
tools/perf/scripts/python/net_dropmonitor.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/tools/perf/scripts/python/net_dropmonitor.py b/tools/perf/scripts/python/net_dropmonitor.py
index 4c11605..6acdc82e 100755
--- a/tools/perf/scripts/python/net_dropmonitor.py
+++ b/tools/perf/scripts/python/net_dropmonitor.py
@@ -32,7 +32,7 @@ def get_kallsyms_table():
j = j +1
if ((j % 100) == 0):
print "\r" + str(j) + "/" + str(linecount),
- kallsyms.append({ 'loc': loc, 'name' : name})
+ kallsyms.append((loc, name))

print "\r" + str(j) + "/" + str(linecount)
kallsyms.sort()
@@ -40,9 +40,9 @@ def get_kallsyms_table():

def get_sym(sloc):
loc = int(sloc)
- for i in kallsyms[::-1]:
- if loc >= i['loc']:
- return (i['name'], loc - i['loc'])
+ for symloc, name in kallsyms[::-1]:
+ if loc >= symloc:
+ return (name, loc - symloc)
return (None, 0)

def print_drop_table():


Attachment: signature.asc
Description: This is a digitally signed message part