From: Steven Rostedt <rostedt@goodmis.org>
To: linux-trace-devel@vger.kernel.org
Cc: Johannes Berg <johannes@sipsolutions.net>,
Josef Bacik <jbacik@fb.com>, Darren Hart <dvhart@infradead.org>,
troyengel@gmail.com
Subject: [PATCH 3/3] trace-cmd: Use PyLong_AsLong() for Python 3
Date: Fri, 19 Jul 2019 18:46:16 -0400 [thread overview]
Message-ID: <20190719225030.507227790@goodmis.org> (raw)
In-Reply-To: 20190719224613.207069107@goodmis.org
From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>
Python 3 has deprecated PyInt_AS_LONG. Add code to use PyLong_AsLong() if
Python 3 is detected. As Python 2 is going to be EOL soon, we need to
support Python 3.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204231
Reported-by: Troy Engel <troyengel@gmail.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
python/ctracecmd.i | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/python/ctracecmd.i b/python/ctracecmd.i
index 63e5dcb813f1..2601d39a76be 100644
--- a/python/ctracecmd.i
+++ b/python/ctracecmd.i
@@ -117,14 +117,21 @@ static PyObject *py_field_get_stack(struct tep_handle *pevent,
return list;
}
+#if PY_MAJOR_VERSION >= 3
static PyObject *fromMemory(void *buf, size_t len)
{
-#if PY_MAJOR_VERSION >= 3
return PyMemoryView_FromMemory(buf, len, PyBUF_READ);
+}
+#define PY_INT_AS_LONG PyLong_AsLong
#else
+static PyObject *fromMemory(void *buf, size_t len)
+{
return PyBuffer_FromMemory(buf, len);
-#endif
}
+#define PY_INT_AS_LONG PyInt_AS_LONG
+#endif
+
+
static PyObject *py_field_get_data(struct tep_format_field *f, struct tep_record *r)
{
@@ -226,7 +233,7 @@ static int python_callback(struct trace_seq *s,
Py_XDECREF(result);
return 0;
}
- r = PyInt_AS_LONG(result);
+ r = PY_INT_AS_LONG(result);
} else if (result == Py_None)
r = 0;
else
--
2.20.1
next prev parent reply other threads:[~2019-07-19 22:50 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-19 22:46 [PATCH 0/3] trace-cmd: Update python plugin for Python 3 Steven Rostedt
2019-07-19 22:46 ` [PATCH 1/3] trace-cmd: Replace PySting_FromString() with PyUnicode_FromString() Steven Rostedt
2019-07-26 7:29 ` Johannes Berg
2019-07-19 22:46 ` [PATCH 2/3] trace-cmd: Use PyMemoryView_FromMemory() for Python 3 Steven Rostedt
2019-07-26 7:30 ` Johannes Berg
2019-07-19 22:46 ` Steven Rostedt [this message]
2019-07-26 7:31 ` [PATCH 3/3] trace-cmd: Use PyLong_AsLong() " Johannes Berg
2019-07-26 15:18 ` Steven Rostedt
2019-07-26 15:22 ` Johannes Berg
2019-07-26 15:30 ` Steven Rostedt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190719225030.507227790@goodmis.org \
--to=rostedt@goodmis.org \
--cc=dvhart@infradead.org \
--cc=jbacik@fb.com \
--cc=johannes@sipsolutions.net \
--cc=linux-trace-devel@vger.kernel.org \
--cc=troyengel@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.