NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
lib/60211: Inconsistent definitions in kqueue: missing EVFILT_USER, incorrect udata type
>Number: 60211
>Category: lib
>Synopsis: Inconsistent definitions in kqueue: missing EVFILT_USER, incorrect udata type
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: lib-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Apr 26 13:15:00 +0000 2026
>Originator: Thierry Lelegard
>Release: NetBSD 10.1
>Organization:
TSDuck open source project (tsduck.io)
>Environment:
System: NetBSD vminetbsd 10.1 NetBSD 10.1 (GENERIC) #0: Mon Dec 16 13:08:11 UTC 2024 mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/amd64/compile/GENERIC amd64
Architecture: x86_64
Machine: amd64
>Description:
The definition of kqueue(2) and its man page are inconsistent with the
documentation on netbsd.org, as well as all other implementations of
kqueue on FreeBSD, OpenBSD, DragonflyBSD and macOS. As a consequence,
some applications which use kqueue cannot be ported to NetBSD.
The documentation on netbsd.org is compatible with all other BSD systems.
However, the reality on a NetBSD 10.1 system is not.
References on netbsd.org:
- https://man.netbsd.org/kqueue.2
- https://wiki.netbsd.org/tutorials/kqueue_tutorial/
Some identified inconsistencies:
- The field udata in struct kevent is intptr_t instead of void*
- The filter EVFILT_USER is missing.
>How-To-Repeat:
cat /usr/include/sys/event.h
man kqueue
>Fix:
No general fix.
The incorrect type for the udata field can be muted using a type cast.
However, the absence of EVFILT_USER prevents the application from working.
Home |
Main Index |
Thread Index |
Old Index