IRC channel logs
2025-11-29.log
back to list of logs
<damo22>youpi: are there a set of macros i can use in gnumach that handle double linked lists? otherwise is there an efficient way to remove an elem from a single linked list? <damo22>hmm i reworked it and now the same timeout is expiring twice <azert>damo22: you can copy paste the FreeBSD 4 macros <azert>removing an element is tricky, it requires the handles for untimeout operations. If that happens frequently it might be an issue for performances <damo22>it sets a timeout and then expires the same timeout multiple times <azert>does that means that the wheel is not "advancing"? <azert>or that it get sets multiple times? <azert>also, you notice how FreeBSD people didn’t just implement the timeout and untimeout functions, but introduced a new API? I think they did it in view of expanding it and it worked <damo22>i changed the timeout/untimeout api <damo22>there was only a couple of old drivers using it <damo22>it sets the timeout once but gets stuck in a loop expiring the same timeout <azert>the most important user is thread_will_wait_with_timeout <damo22>damnit i think the queue_t points to itself for queue_next when theres nothing left? <damo22>how do i get a NULL if there is nothing left in the queue? <azert>damo22: looks to me like that condition is as good as null <damo22>i am getting somewhere, now its failing to reset <damo22>now it is resetting correctly but expiring multiple times