<div dir="ltr"><div>On Tue, Nov 16, 2021 at 9:59 AM Bogdan Andu <<a href="mailto:bog495@gmail.com">bog495@gmail.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Lukas,<br>
<br>
I didn't; find any documentation related to that.<br></blockquote><div><br></div><div>A pr improving the documentation would be much appreciated!</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Anyway,<br>
<br>
$ erl<br>
Erlang/OTP 24 [erts-12.1.4] [source] [64-bit] [smp:4:4] [ds:4:4:10]<br>
[async-threads:1]<br>
<br>
Eshell V12.1.4  (abort with ^G)<br>
1> erlang:system_info(kernel_poll).<br>
true<br>
2><br>
<br>
I guess I have kernel poll support for my erlang servers.<br>
<br>
How can one tell if it is 'kqueue' or 'poll' type of kernel poll?<br>
<br>
Because OpenBSD has also poll which is not great<br>
<br>
Is there any erlang system information function that shows<br>
exactly that?<br></blockquote><div><br></div><div>If you run `erlang:system_info(check_io)` you will get information about the I/O checking sub-system which should include information about which mechanism is used.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Thank you<br>
<br>
<br>
<br>
On Tue, Nov 16, 2021 at 10:53 AM Lukas Larsson <<a href="mailto:lukas@erlang.org" target="_blank">lukas@erlang.org</a>> wrote:<br>
><br>
> Hello!<br>
><br>
> The banner about kernel-poll was removed from the erlang start some releases ago. So to check if you have kernel poll support you need to call `erlang:system_info(kernel_poll)`. If it returns `true` then you have kernel-poll support.<br>
><br>
> Lukas<br>
><br>
> On Tue, Nov 16, 2021 at 9:47 AM Bogdan Andu <<a href="mailto:bog495@gmail.com" target="_blank">bog495@gmail.com</a>> wrote:<br>
>><br>
>> Hello,<br>
>><br>
>> I have an OpenBSD 6.8 amd64 machine and<br>
>> I would like to compile Erlang 24 with kqueue support<br>
>> such that I want erl to show me this:<br>
>><br>
>> $erl<br>
>> ........................ [kernel-poll]<br>
>><br>
>> I understand that this is a compile time option<br>
>> and not anymore a runtime selectable option tru + K true<br>
>> switch<br>
>><br>
>> I tried the following configure options with no success:<br>
>> ./configure --prefix=/usr/local/erlang24.1.4<br>
>> --with-ssl=/usr/local/openssl/1.1.1l --enable-dynamic-ssl-lib<br>
>> --with-ssl-rpath=/usr/local/openssl/1.1.1l/lib --without-javac<br>
>> --enable-threads --enable-kernel-poll --disable-hipe<br>
>><br>
>> With openbsd patches (+./otp_build update_configure)<br>
>> and without patches the result is the same:<br>
>> no kernel-poll flag present - meaning that kernel polling with kqueue<br>
>> is not available to that erlang emulator.<br>
>><br>
>> Please advice me how to build erlang 24 with kqueue support.<br>
>><br>
>> I have an Openbsd 5.4 with erlang 19 that does has kernell-poll flag<br>
>><br>
>> $ erl +Ktrue<br>
>> Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:2:2]<br>
>> [async-threads:10] [kernel-poll:true]<br>
>><br>
>> Eshell V8.1  (abort with ^G)<br>
>><br>
>><br>
>> p.s.<br>
>> building erlang 24 against openssl 1.1.1 for tlsv3 support wasn't<br>
>> a pleasant experience. The configuration script links against<br>
>> system libressl  openssl library, instead of --with-ssl option given<br>
>> to ./configure.<br>
>> So I had to alter manually crypto ./configure and Makefile files .<br>
</blockquote></div></div>