forked from luck/tmp_suning_uos_patched
b1dcc03cb8
This is a fix to the signed/unsigned field handling in the Python scripting engine, based on a patch from Roel Kluin. Basically, Python wants to use a PyInt (which is internally a long) if it can i.e. if the value will fit into that type. If not, it stores it into a PyLong, which isn't actually a long, but an arbitrary-precision integer variable. The code below is similar to to what Python does internally, and it seems to work as expected on the x86 and x86_64 sytems I tested it on. Signed-off-by: Tom Zanussi <tzanussi@gmail.com> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Roel Kluin <roel.kluin@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: rostedt@goodmis.org LKML-Reference: <1270184305.6422.10.camel@tropicana> Signed-off-by: Ingo Molnar <mingo@elte.hu> |
||
---|---|---|
.. | ||
include | ||
scripting-engines | ||
abspath.c | ||
alias.c | ||
build-id.c | ||
build-id.h | ||
cache.h | ||
callchain.c | ||
callchain.h | ||
color.c | ||
color.h | ||
config.c | ||
cpumap.c | ||
cpumap.h | ||
ctype.c | ||
debug.c | ||
debug.h | ||
debugfs.c | ||
debugfs.h | ||
environment.c | ||
event.c | ||
event.h | ||
exec_cmd.c | ||
exec_cmd.h | ||
generate-cmdlist.sh | ||
header.c | ||
header.h | ||
help.c | ||
help.h | ||
hist.c | ||
hist.h | ||
levenshtein.c | ||
levenshtein.h | ||
map.c | ||
map.h | ||
pager.c | ||
parse-events.c | ||
parse-events.h | ||
parse-options.c | ||
parse-options.h | ||
path.c | ||
PERF-VERSION-GEN | ||
probe-event.c | ||
probe-event.h | ||
probe-finder.c | ||
probe-finder.h | ||
quote.c | ||
quote.h | ||
run-command.c | ||
run-command.h | ||
session.c | ||
session.h | ||
sigchain.c | ||
sigchain.h | ||
sort.c | ||
sort.h | ||
strbuf.c | ||
strbuf.h | ||
string.c | ||
string.h | ||
strlist.c | ||
strlist.h | ||
svghelper.c | ||
svghelper.h | ||
symbol.c | ||
symbol.h | ||
thread.c | ||
thread.h | ||
trace-event-info.c | ||
trace-event-parse.c | ||
trace-event-read.c | ||
trace-event-scripting.c | ||
trace-event.h | ||
types.h | ||
usage.c | ||
util.c | ||
util.h | ||
values.c | ||
values.h | ||
wrapper.c |