https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252820
Bug ID: 252820
Summary: Linuxulator: linux_timerfd_settime don't set
expirations count to zero
Product: Base System
Version: CURRENT
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: kern
Assignee: [email protected]
Reporter: [email protected]
Attachment #221726 text/plain
mime type:
Created attachment 221726
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=221726&action=edit
timerfd+epoll+LT
On Linux, read(2) timerfd returns an unsigned 8-byte integer (uint64_t)
containing the number of expirations that have occurred, if the timer has
already expired one or more times since its settings were last modified using
timerfd_settime(), or since the last successful read(2).That's to say, once do
a read or timerfd_settime operation, timer fd's expiration count should be
zero.
Some Linux applications create timerfd and add it to epoll with LT mode, when
event comes, they do timerfd_settime instead of read to stop event source from
trigger, code in the attachment, On FreeBSD timerfd_settime don't set count to
zero, so cause CPU high.
--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"