kqueue_scan() refactoring

2020-10-19 Thread Martin Pieuchot
Diff below is the second part of the refactoring [0] that got committed then reverted 6 months ago. The idea of this refactoring is to move the accounting and markers used when collecting events to a context (struct kqueue_scan_state) such that the collecting routine (kqueue_scan()) can be called

kqueue_scan() refactoring

2020-10-07 Thread Martin Pieuchot
The diff below has already been presented in August [0]. It is the first step at splitting the kqueue refactoring required for the poll and select rewrite. This first iteration introduces the new API with only minimal changes. The only change in behavior is that the markers' `kn_filter' and `kn_s

Re: kqueue_scan() refactoring

2020-05-25 Thread Martin Pieuchot
On 10/04/20(Fri) 14:43, Martin Pieuchot wrote: > Diff below reduces kqueue_scan() to the collect of events on a given > kqueue and let its caller, sys_kevent(), responsible for the copyout(9). > > Apart from the code simplification, this refactoring clearly separates > kqueue_scan() from the sysca

kqueue_scan() refactoring

2020-04-10 Thread Martin Pieuchot
Diff below reduces kqueue_scan() to the collect of events on a given kqueue and let its caller, sys_kevent(), responsible for the copyout(9). Apart from the code simplification, this refactoring clearly separates kqueue_scan() from the syscall logic. That should allow us to re-use the function in