[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-10-26 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : -- title: Implementing Solaris "poll" in the "select" module -> Implementing Solaris "/dev/poll" in the "select" module ___ Python tracker ___ __

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-07 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Removed file: http://bugs.python.org/file23532/0b701eb5e9e3.diff ___ Python tracker ___ ___ Python-bugs-list maili

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-07 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Added file: http://bugs.python.org/file23626/528fdd816160.diff ___ Python tracker ___ ___ Python-bugs-list mailing

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-07 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: Please, review. With current code, each devpoll object has capacity for managing 256 fds, by default. This is about 2048 bytes. The cost seems reasonable, since a normal program will have only a few devpoll objects around. I have considered an optional para

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-07 Thread Antoine Pitrou
Changes by Antoine Pitrou : -- nosy: +neologix ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.pytho

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-07 Thread Ross Lagerwall
Changes by Ross Lagerwall : -- nosy: +rosslagerwall ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-08 Thread Giampaolo Rodola'
Changes by Giampaolo Rodola' : -- nosy: +giampaolo.rodola ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http:/

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-08 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Added file: http://bugs.python.org/file23635/c47a846bed1a.diff ___ Python tracker ___ ___ Python-bugs-list mailing

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-08 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Removed file: http://bugs.python.org/file23635/c47a846bed1a.diff ___ Python tracker ___ ___ Python-bugs-list maili

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-08 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Added file: http://bugs.python.org/file23636/518b32ce893e.diff ___ Python tracker ___ ___ Python-bugs-list mailing

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-08 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: Please, check the new changeset, with all your feedback. Thanks!. -- ___ Python tracker ___ ___ Pyt

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Added file: http://bugs.python.org/file23643/2506e49b9f71.diff ___ Python tracker ___ ___ Python-bugs-list mailing

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: Another changeset. Hopefully, final :-). Please, review. -- ___ Python tracker ___ ___ Python-bugs

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Ross Lagerwall
Ross Lagerwall added the comment: + increases this value, c:func:`devpoll` will return a possible + incomplete list of active file descriptors. I think this should change to: + increases this value, c:func:`devpoll` will return a possibly + incomplete list of active file descriptors.

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: Thanks, Ross. Your suggestion has been committed in my branch. Waiting for more feedback. -- ___ Python tracker ___ __

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Ross Lagerwall
Ross Lagerwall added the comment: Is write()ing a devpoll fd a blocking operation in the kernel? Does it need to have Py_BEGIN_ALLOW_THREADS around it? The same question applies for open()ing it. Obviously, the ioctl() call *is* blocking :-) -- ___

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Ross Lagerwall
Ross Lagerwall added the comment: Also, you can use Py_RETURN_NONE instead of: +Py_INCREF(Py_None); +return Py_None; -- ___ Python tracker ___ ___

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Antoine Pitrou
Changes by Antoine Pitrou : -- nosy: +pitrou ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: They are operations potentially slow, there are not realtime specifications. My machine is quite capable (16 CPUs), but let's see what a bit of DTRACE scripting tells us: First, let's time the open: """ syscall::open*:entry /copyinstr(arg0)=="/dev/poll"/ {

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Added file: http://bugs.python.org/file23646/9d687fdd924d.diff ___ Python tracker ___ ___ Python-bugs-list mailing

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: New changeset, after Ross feedback. Thanks!. -- ___ Python tracker ___ ___ Python-bugs-list mailing

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Ross Lagerwall
Ross Lagerwall added the comment: That was thorough :-) Seems OK though. +if (n < size) { +PyErr_SetString(PyExc_IOError, "failed to write all pollfds. " +"Please, report in http://bugs.python.org/";); If n < size, it's not a Python error is it? I would say it's the

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: The timing for the GIL I am providing is for release&acquiring. That is, all the work. In fact I am having in count too the syscall inside the release&acquire, to account for cache issues. That is, between the release and the acquire, there is a real syscall

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Antoine Pitrou
Antoine Pitrou added the comment: > That was thorough :-) Seems OK though. > > +if (n < size) { > +PyErr_SetString(PyExc_IOError, "failed to write all pollfds. " > +"Please, report in http://bugs.python.org/";); > > If n < size, it's not a Python error is it? I woul

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-09 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: The problem with partial writes is that the data is not an unstructured stream of bytes, but a concrete binary dump. You can not simply retry again. My bet is that "/dev/poll" neves does partial writes. If I am mistaken, I will bug the Illumos people to help

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-14 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : Added file: http://bugs.python.org/file23684/11f08326afd0.diff ___ Python tracker ___ ___ Python-bugs-list mailing

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-14 Thread Jesús Cea Avión
Jesús Cea Avión added the comment: New changeset. The only change is: """ diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -685,8 +685,16 @@ return -1; } if (n < size) { -PyErr_SetString(PyExc_IO

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-14 Thread Roundup Robot
Roundup Robot added the comment: New changeset 8f7ab4bf7ad9 by Jesus Cea in branch 'default': Issue #6397: Support '/dev/poll' polling objects in select module, under Solaris & derivatives. http://hg.python.org/cpython/rev/8f7ab4bf7ad9 -- nosy: +python-dev

[issue6397] Implementing Solaris "/dev/poll" in the "select" module

2011-11-14 Thread Jesús Cea Avión
Changes by Jesús Cea Avión : -- resolution: -> fixed status: open -> closed ___ Python tracker ___ ___ Python-bugs-list mailing list U