From: Petr Machata Date: Wed, 21 Mar 2018 23:57:32 +0000 (+0100) Subject: perf python: Reference Py_None before returning it X-Git-Tag: v4.17-rc1~179^2~6^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=83428f2fad48e16fddff0cb445cb4fedf5afe4ab;p=thirdparty%2Fkernel%2Flinux.git perf python: Reference Py_None before returning it Python None objects are handled just like all the other objects with respect to their reference counting. Before returning Py_None, its reference count thus needs to be bumped. Signed-off-by: Petr Machata Acked-by: Jiri Olsa Cc: Alexander Shishkin Cc: Namhyung Kim Cc: Peter Zijlstra Cc: Petr Machata Link: http://lkml.kernel.org/r/b1e565ecccf68064d8d54f37db5d028dda8fa522.1521675563.git.petrm@mellanox.com Signed-off-by: Arnaldo Carvalho de Melo --- diff --git a/tools/perf/util/python.c b/tools/perf/util/python.c index b956868fd4450..863b61478edd6 100644 --- a/tools/perf/util/python.c +++ b/tools/perf/util/python.c @@ -1004,8 +1004,10 @@ static PyObject *pyrf_evlist__read_on_cpu(struct pyrf_evlist *pevlist, return PyErr_NoMemory(); evsel = perf_evlist__event2evsel(evlist, event); - if (!evsel) + if (!evsel) { + Py_INCREF(Py_None); return Py_None; + } pevent->evsel = evsel;