]> git.tuebingen.mpg.de Git - paraslash.git/commitdiff
Merge branch 'refs/heads/t/poll'
authorAndre Noll <maan@tuebingen.mpg.de>
Sun, 11 Sep 2022 14:34:12 +0000 (16:34 +0200)
committerAndre Noll <maan@tuebingen.mpg.de>
Sun, 11 Sep 2022 14:35:30 +0000 (16:35 +0200)
This series modifies all calls to select(2) to use poll(2) instead in
order to avoid the known shortcomings of the select API, in particular
its limit of at most 1024 file descriptors and the fact that fds above
1023 cannot be monitored with select(2) even if fewer than 1024 fds
are open.

The first patches of the series prepare this switch, converting the
easy cases, hiding select specific data structures such as fd sets,
and adjusting function names and documentation. The crucial commit
is the last one. See its rather verbose log message for details.

* refs/heads/t/poll:
  Switch from select(2) to poll(2).
  Rename ->{pre,post}_select methods to ->{pre,post}_monitor.
  Misc documentation cleanups related to select().
  stdin/stdout: Streamline documentation of {pre,post}_select().
  Consolidate receiver/filter/writer {pre,post}_select() docs.
  Hide implementation of para_fd_set().
  send: Avoid select-specific arguments in {pre,post}_select().
  sched: Introduce sched_{read,write}_ok().
  audiod: Rename handle_connect().
  net: Drop fd_set parameter from para_accept().
  fd: Drop fd_set parameter from read_nonblock() and friends.
  interactive: Avoid select(2) in input_available().
  fd.c: Prefer poll(2) over select(2) for write_ok().
  sched: Use integer value for select timeout.

1  2 
NEWS.md
configure.ac

diff --cc NEWS.md
index e56aace3e37bbf67801808e2d26dfa878e9de27b,e9713d9826ff74e25aa01ceaad9a9db13f3113a5..0f2eec0d5e232f5ff11a74bd11860e77ea0e7e56
+++ b/NEWS.md
@@@ -5,14 -5,6 +5,17 @@@ NEW
  0.7.1 (to be announced) "digital spindrift"
  -------------------------------------------
  
 +- The autogen.sh script now only creates the autoconf specific files
 +  but no longer runs configure, make and the test suite.
 +
 +- A stripped down copy of the discontinued libmp4ff library has become
 +  part of the paraslash code base. As a result it is no longer necessary
 +  to install faad from source to get support for aac/m4a files. The
 +  faad decoder package must still be installed.
 +
++- All calls to select(2) have been replaced by calls to poll(2)
++  to avoid known shortcomings of the select API.
++
  [tarball](./releases/paraslash-git.tar.xz)
  
  ----------------------------------
diff --cc configure.ac
Simple merge