[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181227125451.GA25753@kernel.org>
Date: Thu, 27 Dec 2018 09:54:51 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Jiri Olsa <jolsa@...hat.com>
Cc: Jiri Olsa <jolsa@...nel.org>, lkml <linux-kernel@...r.kernel.org>,
Ingo Molnar <mingo@...nel.org>,
Namhyung Kim <namhyung@...nel.org>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Ondřej Lysoněk <olysonek@...hat.com>,
Jaroslav Škarvada <jskarvad@...hat.com>
Subject: Re: [PATCH] perf python: Do not force closing original perf
descriptor in evlist.get_pollfd
Em Thu, Dec 27, 2018 at 09:06:38AM +0100, Jiri Olsa escreveu:
> On Wed, Dec 26, 2018 at 12:21:21PM +0100, Jiri Olsa wrote:
> > Ondřej reported that when compiled with python3, the python
> > extension regress in evlist.get_pollfd function behaviour.
> >
> > The evlist.get_pollfd creates file objects from evlist's fds
> > and returns them in the list. The python3 version also sets
> > them to 'close the original descriptor' when the object die
> > (is closed), by passing True via 'closefd' arg in PyFile_FromFd
> > call.
> >
> > The python's closefd doc says:
> > If closefd is False, the underlying file descriptor will be kept open
> > when the file is closed.
> >
> > That's why following line in python3 closes all evlist fds:
> > evlist.get_pollfd()
> >
> > the returned list is immediately destroyed and that takes
> > down the original events fds.
> >
> > Passing closefd as False to PyFile_FromFd to fix this.
> >
> > Reported-by: Ondřej Lysoněk <olysonek@...hat.com>
> > Link: http://lkml.kernel.org/n/tip-ru9hmsaliew8p01kr0050mvg@git.kernel.org
> > Signed-off-by: Jiri Olsa <jolsa@...nel.org>
>
> oops, forgot to add.. and cc-ing Jaroslav Škarvada
>
> Fixes: 66dfdff03d19 ("perf tools: Add Python 3 support")
Thanks, added the Fixes: and Cc: Jaroslav,
- Arnaldo
Powered by blists - more mailing lists