polling icon indicating copy to clipboard operation
polling copied to clipboard

Support the AIX operating system

Open notgull opened this issue 3 years ago • 2 comments

Rust is currently moving to support AIX, see rust-lang/compiler-team#553. AIX uses a system called "pollsets" that is vaguely similar to BSD's kqueue system for efficient polling. We should probably add a backend for this system.

Alternatively, AIX could just use the current poll()-based backend. But I don't think that would be as efficient.

CC @ecnelises I can write the initial implementation, but I don't have an AIX machine to test it on. Would you be able to test it?

notgull avatar Feb 20 '23 16:02 notgull

I'm not familiar with this crate, but I've written an initial implementation of pollset in mio (https://github.com/tokio-rs/mio/pull/1620).

Unfortunately, I found different behavior between Linux and AIX when pollset_ctling a fd duplicated by fcntl, which is relied on by mio. I'm looking into it but I'm not sure that is related to this crate.

I'll have a look at this crate and try if porting pollset into this works fine.

ecnelises avatar Feb 21 '23 02:02 ecnelises

Thank you!

Unfortunately, I found different behavior between Linux and AIX when pollset_ctling a fd duplicated by fcntl, which is relied on by mio. I'm looking into it but I'm not sure that is related to this crate.

This crate doesn't have a try_clone() feature, so this hopefully shouldn't be an issue.

notgull avatar Feb 21 '23 23:02 notgull