patrixl has quit [Read error: Connection reset by peer]
aw- has joined #picolisp
patrixl has joined #picolisp
_whitelogger has joined #picolisp
<aw->
Regenaxer hi
<aw->
i found a bug in pil21 which has to do with (listen) or (poll) or something...
<aw->
i'll wait until you're online to explain, but essentially it seems my parent process goes into an infinite 'poll' loop after i make a tcp connection
<aw->
brings the CPU core to 100% unless i kill it
<aw->
confirmed it's in the parent, not the child that gets forked on the TCP
<aw->
more details later
<aw->
i'll make a reproducible test for you to analyze, and post it to pastebin shortly
<Regenaxer>
Good morning aw-
<Regenaxer>
Cool, thanks!
<aw->
Regenaxer morning, we're in the middle of a really bad typhoon here
<aw->
no electricity since 3am
<aw->
but i'm fine, staying in a hotel temporarily, quiet time for coding ;)
<Regenaxer>
yeah, I know. Masako is watching news of Okinawa
<Regenaxer>
the infinite loop is returning POLLIN as expected
<Regenaxer>
ok
Regenaxer has left #picolisp [#picolisp]
Regenaxer has joined #picolisp
<Regenaxer>
So there is indeed something wrong with closing
<Regenaxer>
I have some other stuff to do. Will check later
<Regenaxer>
Thanks so far! :)
patrixl has joined #picolisp
<aw->
ok thanks Regenaxer
aw- has quit [Quit: bbl]
orivej has joined #picolisp
razzy has joined #picolisp
razzy has quit [Quit: Connection closed]
aw- has joined #picolisp
razzy has joined #picolisp
rob_w has quit [Quit: Leaving]
<aw->
back
<Regenaxer>
I had no time yet. Let's see this evening
<aw->
no problem
jibanes has quit [Ping timeout: 258 seconds]
jibanes has joined #picolisp
beneroth has quit [Remote host closed the connection]
beneroth has joined #picolisp
<Regenaxer>
Uuuhhh!
<Regenaxer>
Got it
<Regenaxer>
aw-, there are two reasons:
<Regenaxer>
One is that I need indeed check also for POLLHUP and also POLLERR. They may both come without POLLIN
<Regenaxer>
But the other is really, really stupid!
<Regenaxer>
I did
<Regenaxer>
while (p->fd != fd)
<Regenaxer>
++fd;
<Regenaxer>
but correct is
<Regenaxer>
while (p->fd != fd)
<Regenaxer>
++p;
<Regenaxer>
I.e. when searching for a pollfd structure entry, I did not increment the pointer (the searched structure array), but the file descriptor!!
<Regenaxer>
It is a big wonder that *anything* worked until now
<aw->
ohhhh
<aw->
wow
<aw->
because the pointer address was the same as the fd? so it worked without you noticing
<Regenaxer>
no, the pointer points to the fd entry
<Regenaxer>
it points to a struct
<aw->
right
<Regenaxer>
and I need to find it
<Regenaxer>
by fy
<Regenaxer>
fd
<aw->
well i'm glad you found the bug
<Regenaxer>
yeah
<Regenaxer>
thanks for the straces
<aw->
np
<Regenaxer>
I tracked down fd 10
<aw->
let me know when you make a new release, i'll test it
<Regenaxer>
it is the 'tell' pipe
<Regenaxer>
yes
<aw->
yes i knew it was a pipe
<Regenaxer>
T
<aw->
great!
<aw->
rare bug, good to find it early
<Regenaxer>
yes
orivej has quit [Ping timeout: 260 seconds]
<Regenaxer>
ok, released the fix
<Regenaxer>
If you have time, please check
<Regenaxer>
Still in the hotel?
<aw->
no no i'm home now
<Regenaxer>
Good to hear
<aw->
works!
<aw->
no more CPU pinned at 100%, strace looks fine
<Regenaxer>
Perfect :)
<aw->
thanks
<Regenaxer>
Thank you!
razzy has quit [Quit: Connection closed]
<beneroth>
Regenaxer, hihi, bad typo
<beneroth>
aw-, how is the weather? all good?
<beneroth>
is it over now?
<Regenaxer>
hi beneroth, really stupid
<beneroth>
happens
<Regenaxer>
Strange that it did not go infinite loop
<Regenaxer>
and *something* worked at all
<beneroth>
Ada guys would say that a fd should not even have a ++ operator, I guess
<beneroth>
yeah
<Regenaxer>
In some context it makes sense to inc the fd
<Regenaxer>
well, not much
<aw->
beneroth: good thanks, typhoon has passed now
<beneroth>
Regenaxer, I guess.. special devices, embedded?
<beneroth>
so make about the security this theater provides...
<beneroth>
s/make/much
<Regenaxer>
T
<beneroth>
my pinephone arrived today (foss linux smartphone). running postmarketOS (linux distro, gnome) - will have to test if it is feasible as everyday device (it's a beta/community release to get more people fiddling with it)
<beneroth>
I have only unpacked it so far - but it looks very nice
<Regenaxer>
Cool
<beneroth>
in the worst case.. let's hope that production of these (and similiar) devices gets more widespread
<Regenaxer>
The problems I saw with Ubuntu Touch was that there seemed no easy way to install a custom keyboard like Penti
<Regenaxer>
Gnome is the same probably
<beneroth>
then instead of selling pilbox let's sell pilbox devices which can also be used as phones! ;-)
<Regenaxer>
ok :)
<beneroth>
oh, I will try out
<Regenaxer>
It is a general problem in Linux
<Regenaxer>
also on Desktop and Notebook
<Regenaxer>
I had to write a kernel driver
<beneroth>
I didn't have penti on my phone (too small screen for my taste), but I never was happy with the keyboards I had on android... well i was happy on my 10 year old samsung, somewhat