<p>laforge <strong>uploaded patch set #5</strong> to this change.</p><p><a href="https://gerrit.osmocom.org/c/libosmocore/+/20732">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">select: Migrate over to poll()<br><br>select is an ancient interface with weird restrictions, such as<br>the fact that it cannot be used for file descriptor values > 1024.<br><br>This may have been sufficient 40 years ago, but certainly is not in<br>2020.  I wanted to migrate to epoll(), but unfortunately it doesn't<br>work well with the fact that existing programs simply set osmo_fd.flags<br>without making any API calls at the time they change those flags.<br><br>So let's do the migration to poll() as a first step, and then consider<br>epoll() as a second step further down the road, after introducing new<br>APIs and porting applications over.<br><br>The poll() code introduced in this patch is not extremely efficient,<br>as it needs to do extensive linked list iterations after poll() returns<br>in order to find the osmo_fd from the fd.  Optimization is possible,<br>but let's postpone that to a follow-up patch.<br><br>At compile time, a new --enable-force-io-select argument can be given<br>to configure, forcing the use of the old select() backend instead of the<br>new poll() based backend.<br><br>Change-Id: I9e80da68a144b36926066610d0d3df06abe09bca<br>---<br>M configure.ac<br>M include/osmocom/core/timer.h<br>M src/select.c<br>M src/timer.c<br>4 files changed, 165 insertions(+), 3 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/32/20732/5</pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/libosmocore/+/20732">change 20732</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/libosmocore/+/20732"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: libosmocore </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I9e80da68a144b36926066610d0d3df06abe09bca </div>
<div style="display:none"> Gerrit-Change-Number: 20732 </div>
<div style="display:none"> Gerrit-PatchSet: 5 </div>
<div style="display:none"> Gerrit-Owner: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newpatchset </div>