Page MenuHomeFreeBSD

kqueue: add EV_KEEPUDATA flag
ClosedPublic

Authored by freebsdphab-AX9_cmx.ietfng.org on May 16 2021, 12:17 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Jan 6, 7:48 PM
Unknown Object (File)
Dec 15 2025, 1:24 PM
Unknown Object (File)
Dec 13 2025, 5:23 PM
Unknown Object (File)
Dec 10 2025, 11:28 PM
Unknown Object (File)
Nov 24 2025, 9:27 PM
Unknown Object (File)
Nov 18 2025, 3:44 PM
Unknown Object (File)
Nov 2 2025, 1:03 AM
Unknown Object (File)
Oct 31 2025, 6:22 AM

Details

Summary

This allows us to, for example, NOTE_TRIGGER or EV_{EN,DIS}ABLE events without overwriting the stashed pointer.

Test Plan

Manual verification of EV_KEEPUDATA behavior, new test functions

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

I've been using this locally and found it *extremely* useful, and frankly was quite surprised when I found out that EV_ENABLE/EV_DISABLE trashed udata originally.

I think the only thing that would be nice to add in addition are some tests for this. Probably best for that to add a new "native" test binary in tests/sys/kqueue instead of shoe-horning this into the NetBSD tests.

@jhb Any chance you could push this? I've been using this for months and it's worked well for me.

This revision is now accepted and ready to land.Sep 4 2021, 10:51 PM
This revision was automatically updated to reflect the committed changes.