1 |
On 03/25/2011 01:21 AM, Michael Haubenwallner wrote: |
2 |
> Hi Zac (et al), |
3 |
> |
4 |
> while this problem occurs on AIX only (for now?), I doubt this problem is |
5 |
> introduced in prefix-portage. |
6 |
> |
7 |
> With recent prefix-portage-2.2.01.18125 (Fabian, how do you calculate the |
8 |
> version numbers since moving to git?), the "EbuildProcess" spits this |
9 |
> every now and then during "emerge mime-types" fex: |
10 |
> |
11 |
> * EbuildProcess received strange poll event: 16384 |
12 |
> |
13 |
> While I don't understand (yet) why this is there on AIX at all, it does |
14 |
> trigger an IOError when trying to log this message to $T/build.log after |
15 |
> $WORKDIR has been cleaned up. When I avoid the logging of this message, |
16 |
> everything (seems to) work fine. |
17 |
|
18 |
You can compare 16384 to the values of POLLERR and POLLNVAL in order to |
19 |
see what type of event it is. Apparently the values on AIX are different |
20 |
from those on Linux, because here's what I see on Linux: |
21 |
|
22 |
Python 2.7.1 (r271:86832, Mar 19 2011, 04:00:12) |
23 |
[GCC 4.5.2] on linux2 |
24 |
Type "help", "copyright", "credits" or "license" for more information. |
25 |
>>> import select |
26 |
>>> dir(select) |
27 |
['EPOLLERR', 'EPOLLET', 'EPOLLHUP', 'EPOLLIN', 'EPOLLMSG', |
28 |
'EPOLLONESHOT', 'EPOLLOUT', 'EPOLLPRI', 'EPOLLRDBAND', 'EPOLLRDNORM', |
29 |
'EPOLLWRBAND', 'EPOLLWRNORM', 'PIPE_BUF', 'POLLERR', 'POLLHUP', |
30 |
'POLLIN', 'POLLMSG', 'POLLNVAL', 'POLLOUT', 'POLLPRI', 'POLLRDBAND', |
31 |
'POLLRDNORM', 'POLLWRBAND', 'POLLWRNORM', '__doc__', '__file__', |
32 |
'__name__', '__package__', 'epoll', 'error', 'poll', 'select'] |
33 |
>>> select.POLLNVAL |
34 |
32 |
35 |
>>> select.POLLERR |
36 |
8 |
37 |
|
38 |
> For the attached logfile, I've added these two lines to usr/lib/portage/bin/ebuild.sh: |
39 |
> @@ -1,3 +1,5 @@ |
40 |
> #!/big5tk/local/gprefix/bin/bash |
41 |
> # Copyright 1999-2011 Gentoo Foundation |
42 |
> # Distributed under the terms of the GNU General Public License v2 |
43 |
> +echo "ebuild.sh: $0 $@" >&2 |
44 |
> +echo "ebuild.sh: WORKDIR: ${WORKDIR}" >&2 |
45 |
> @@ |
46 |
> |
47 |
> Any idea? |
48 |
|
49 |
This will handle the IOError: |
50 |
|
51 |
|
52 |
http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=0a64f784003c11e151405b7f708d77770de0ed57 |
53 |
|
54 |
It might be risky to skip logging of the POLLNVAL / POLLERR events, so |
55 |
hopefully we can determine their cause and handle them somehow. Do they |
56 |
seem to cause any problems? It might be something specific about pty |
57 |
devices on AIX. |
58 |
-- |
59 |
Thanks, |
60 |
Zac |