OS X poll breakage (Was: Please help test recent changes)

Demi Marie Obenour demiobenour at gmail.com
Thu Jan 13 17:07:39 AEDT 2022


On 1/11/22 17:42, Damien Miller wrote:
> On Tue, 11 Jan 2022, Demi Marie Obenour wrote:
> 
>>> Wow, it looks like Darwin's poll(2) is completely broken for
>>> character- special devices (at least). E.g. the attached program
>>> spins shows similar behaviour when run on /dev/null - it spins,
>>> returning revents=POLLNVAL.
>>
>> Is using kqueue(2) an option? That’s faster, and it doesn’t have the
>> problem with large file descriptors that poll(2) has.
> 
> No, because it's not cross-platform and I don't want to have to maintain
> multiple mainloops (believe me, one is more than enough). It would have
> been really nice if the OSS Unix-like operating systems has standardised
> on one event notification; kqueue and epoll are both fine.
> 
> Also, it seems like the OS X kqueue(2) implementation suffers from the
> same bug anyway. I suspect that this is the root cause, and that their
> poll(2) is built on top of kqueue(2).

What about filtering out file descriptors belonging to /dev files?

-- 
Sincerely,
Demi Marie Obenour (she/her/hers)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xB288B55FFF9C22C1.asc
Type: application/pgp-keys
Size: 4885 bytes
Desc: OpenPGP public key
URL: <http://lists.mindrot.org/pipermail/openssh-unix-dev/attachments/20220113/b5ba7509/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.mindrot.org/pipermail/openssh-unix-dev/attachments/20220113/b5ba7509/attachment-0001.asc>


More information about the openssh-unix-dev mailing list