History log of /freebsd-13.1/lib/libc/sys/kqueue.2 (Results 1 – 25 of 94)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release/12.4.0, release/13.1.0
# 7a6364ac 19-Jan-2022 Konstantin Belousov <[email protected]>

kqueue(2): Add note about format of the data for NOTE_EXIT

PR: 261346

(cherry picked from commit 7406ec4ea99c1c61e88d5c98c58094093b9e78fb)


Revision tags: release/12.3.0
# b7e90b29 30-Sep-2021 Kyle Evans <[email protected]>

kqueue: document how timers with low/past timeouts are handled

(cherry picked from commit 4b5554cebb66020f59dc869b835aebbd66e4bb8c)


# 603c9bb0 07-Sep-2021 Mark Johnston <[email protected]>

kqueue.2: Document the fact that EVFILT_READ can be used on kqueues

Reviewed by: bcr, kib
Sponsored by: The FreeBSD Foundation

(cherry picked from commit f756c911681d7730ca34c23b69dbdb6143965858)


# acabc209 27-May-2021 Mark Johnston <[email protected]>

kevent: Prohibit negative change and event list lengths

Previously, a negative change list length would be treated the same as
an empty change list. A negative event list length would result in
bog

kevent: Prohibit negative change and event list lengths

Previously, a negative change list length would be treated the same as
an empty change list. A negative event list length would result in
bogus copyouts. Make kevent(2) return EINVAL for both cases so that
application bugs are more easily found, and to be more robust against
future changes to kevent internals.

Reviewed by: imp, kib
Sponsored by: The FreeBSD Foundation

(cherry picked from commit e00bae5c181ac8282caf41cd33a076da03cf8ac9)

show more ...


Revision tags: release/13.0.0
# 6d075fd9 23-Dec-2020 Konstantin Belousov <[email protected]>

Document eventfd().

Submitted by: [email protected]
Reviewed by: bcr, markj (previous version)
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D26668


# 0ef405ee 23-Dec-2020 Konstantin Belousov <[email protected]>

kqueue(2): Use .Fo instead .Ft

MFC after: 3 days
Sponsored by: The FreeBSD Foundation


Revision tags: release/12.2.0
# e0f7c06d 14-Jun-2020 Gordon Bergling <[email protected]>

libc manpages: various improvements from NetBSD

- Add STANDARDS and HISTORY sections within the appropriate manpages
- Mention two USENIX papers within kqueue(2) and strlcpy(3)

Reviewed by: bcr (me

libc manpages: various improvements from NetBSD

- Add STANDARDS and HISTORY sections within the appropriate manpages
- Mention two USENIX papers within kqueue(2) and strlcpy(3)

Reviewed by: bcr (mentor)
Approved by: bcr (mentor)
Obtained from: NetBSD
MFC after: 7 days
Differential Revision: https://reviews.freebsd.org/D24650

show more ...


Revision tags: release/11.4.0
# 569eb766 27-Apr-2020 Mark Johnston <[email protected]>

Fix handling of EV_EOF for named pipes.

Contrary to the kevent man page, EV_EOF on a fifo is not cleared by
EV_CLEAR. Modify the read and write filters to clear EV_EOF when the
fifo's PIPE_EOF flag

Fix handling of EV_EOF for named pipes.

Contrary to the kevent man page, EV_EOF on a fifo is not cleared by
EV_CLEAR. Modify the read and write filters to clear EV_EOF when the
fifo's PIPE_EOF flag is clear, and update the man page to document the
new behaviour.

Modify the write filter to return the amount of buffer space available
even if no readers are present. This matches the behaviour for sockets.

When reading from a pipe, only call pipeselwakeup() if some data was
actually read. This prevents the continuous re-triggering of a
EVFILT_READ event on EOF when in edge-triggered mode.

PR: 203366, 224615
Submitted by: Jan Kokemüller <[email protected]>
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D24528

show more ...


# a269a14f 22-Apr-2020 Kyle Evans <[email protected]>

kqueue(2): de-vandalize the random sentence in the middle

A last minute change appears to have inadvertently vandalized unrelated
parts of the manpage with the date. =-(

Reported by: rpokala


# 00b0f94c 22-Apr-2020 Kyle Evans <[email protected]>

kqueue(2): add a note about EV_RECEIPT

In the below-referenced PR, a case is attached of a simple reproducer that
exhibits suboptimal behavior: EVFILT_READ and EVFILT_WRITE being set in the
same kev

kqueue(2): add a note about EV_RECEIPT

In the below-referenced PR, a case is attached of a simple reproducer that
exhibits suboptimal behavior: EVFILT_READ and EVFILT_WRITE being set in the
same kevent(2) call will only honor the first one. This is, in-fact, how
it's supposed to work.

A read of the manpage leads me to believe we could be more clear about this;
right now there's a logical leap to make in the relevant statement: "When
passed as input, it forces EV_ERROR to always be returned." -- the logical
leap being that this indicates the caller should have allocated space for
the change to be returned with EV_ERROR indicated in the events, or
subsequent filters will get dropped on the floor.

Another possible workaround that accomplishes similar effect without needing
space for all events is just setting EV_RECEIPT on the final change being
passed in; if any errored before it, the kqueue would not be drained. If we
made it to the final change with EV_RECEIPT set, then we would return that
one with EV_ERROR and still not drain the kqueue. This would seem to not be
all that advisable.

PR: 229741
MFC after: 1 week

show more ...


Revision tags: release/12.1.0, release/11.3.0, release/12.0.0
# 95c05062 27-Jul-2018 David Bright <[email protected]>

Allow a EVFILT_TIMER kevent to be updated.

If a timer is updated (re-added) with a different time period
(specified in the .data field of the kevent), the new time period has
no effect; the timer wi

Allow a EVFILT_TIMER kevent to be updated.

If a timer is updated (re-added) with a different time period
(specified in the .data field of the kevent), the new time period has
no effect; the timer will not expire until the original time has
elapsed. This violates the documented behavior as the kqueue(2) man
page says (in part) "Re-adding an existing event will modify the
parameters of the original event, and not result in a duplicate
entry."

This modification, adapted from a patch submitted by cem@ to PR214987,
fixes the kqueue system to allow updating a timer entry. The
kevent timer behavior is changed to:

* When a timer is re-added, update the timer parameters to and
re-start the timer using the new parameters.
* Allow updating both active and already expired timers.
* When the timer has already expired, dequeue any undelivered events
and clear the count of expirations.

All of these changes address the original PR and also bring the
FreeBSD and macOS kevent timer behaviors into agreement.

A few other changes were made along the way:

* Update the kqueue(2) man page to reflect the new timer behavior.
* Fix man page style issues in kqueue(2) diagnosed by igor.
* Update the timer libkqueue system test to test for the updated
timer behavior.
* Fix the (test) libkqueue common.h file so that it includes
config.h which defines various HAVE_* feature defines, before the
#if tests for such variables in common.h. This enables the use of
the actual err(3) family of functions.
* Fix the usages of the err(3) functions in the tests for incorrect
type of variables. Those were formerly undiagnosed due to the
disablement of the err(3) functions (see previous bullet point).

PR: 214987
Reported by: Brian Wellington <[email protected]>
Reviewed by: kib
MFC after: 1 week
Relnotes: yes
Sponsored by: Dell EMC
Differential Revision: https://reviews.freebsd.org/D15778

show more ...


Revision tags: release/11.2.0
# 837fe325 28-Dec-2017 Eitan Adler <[email protected]>

Fix a few more speelling errors

Reviewed by: bjk
Reviewed by: jilles (incl formal "accept")
Differential Revision: https://reviews.freebsd.org/D13650


# 9e6e05e4 07-Dec-2017 Benjamin Kaduk <[email protected]>

Note that old sys/event.h required manual sys/types.h inclusion

ed fixed this in r313704 but older versions are still affected.


Revision tags: release/10.4.0, release/11.1.0
# 09986d3b 23-Jun-2017 Alan Somers <[email protected]>

Clarify usage of aio(4) with kqueue(2)

Reviewed by: jhb
MFC after: 3 weeks
Differential Revision: https://reviews.freebsd.org/D11299


# 2b34e843 17-Jun-2017 Konstantin Belousov <[email protected]>

Add abstime kqueue(2) timers and expand struct kevent members.

This change implements NOTE_ABSTIME flag for EVFILT_TIMER, which
specifies that the data field contains absolute time to fire the
event

Add abstime kqueue(2) timers and expand struct kevent members.

This change implements NOTE_ABSTIME flag for EVFILT_TIMER, which
specifies that the data field contains absolute time to fire the
event.

To make this useful, data member of the struct kevent must be extended
to 64bit. Using the opportunity, I also added ext members. This
changes struct kevent almost to Apple struct kevent64, except I did
not changed type of ident and udata, the later would cause serious API
incompatibilities.

The type of ident was kept uintptr_t since EVFILT_AIO returns a
pointer in this field, and e.g. CHERI is sensitive to the type
(discussed with brooks, jhb).

Unlike Apple kevent64, symbol versioning allows us to claim ABI
compatibility and still name the new syscall kevent(2). Compat shims
are provided for both host native and compat32.

Requested by: bapt
Reviewed by: bapt, brooks, ngie (previous version)
Sponsored by: The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D11025

show more ...


# d60fa657 16-Jun-2017 Konstantin Belousov <[email protected]>

Move the description of kern.kq_calloutmax sysctl into a new paragraph
for better presentation.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 17c847c1 16-Jun-2017 Konstantin Belousov <[email protected]>

Start a new sentence on the new line.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# b11ef6e9 18-Apr-2017 Sergey Kandaurov <[email protected]>

Document kevent EVFILT_EMPTY.

Reviewed by: hiren
X-MFC with: r312277


# 8eb15797 16-Feb-2017 Ed Schouten <[email protected]>

Remove unnecessary #includes from the kqueue(2) man page.

Now that <sys/event.h> can be included on its own, adjust the manual
page accordingly. Remove both unnecessary #include statements from the

Remove unnecessary #includes from the kqueue(2) man page.

Now that <sys/event.h> can be included on its own, adjust the manual
page accordingly. Remove both unnecessary #include statements from the
synopsis and the example code.

While there, also add a note to the BUGS section to mention that
previous versions of this header file still depend on <sys/types.h>.

Reviewed by: ngie, vangyzen
Differential Revision: https://reviews.freebsd.org/D9605

show more ...


# 3617efe5 06-Oct-2016 Bryan Drewery <[email protected]>

Improve grammar.

MFC after: 1 week
Sponsored by: Dell EMC Isilon


Revision tags: release/11.0.1, release/11.0.0
# 6e745eed 03-May-2016 Konstantin Belousov <[email protected]>

Correct wording.

Submitted by: David A. Bright
MFC after: 2 weeks


# c89e1b87 03-May-2016 Konstantin Belousov <[email protected]>

Add EVFILT_VNODE open, read and close notifications.

While there, order EVFILT_VNODE notes descriptions alphabetically.

Based on submission, and tested by: Vladimir Kondratyev <[email protected]>
MF

Add EVFILT_VNODE open, read and close notifications.

While there, order EVFILT_VNODE notes descriptions alphabetically.

Based on submission, and tested by: Vladimir Kondratyev <[email protected]>
MFC after: 2 weeks

show more ...


# f7b71c8a 02-May-2016 Konstantin Belousov <[email protected]>

Issue NOTE_EXTEND when a directory entry is added to or removed from
the monitored directory as the result of rename(2) operation. The
renames staying in the directory are not reported.

Submitted b

Issue NOTE_EXTEND when a directory entry is added to or removed from
the monitored directory as the result of rename(2) operation. The
renames staying in the directory are not reported.

Submitted by: Vladimir Kondratyev <[email protected]>
MFC after: 2 weeks

show more ...


# ba55e112 01-May-2016 Konstantin Belousov <[email protected]>

As a reader service, explain NOTE_LINK reporting for the directories.

Submitted by: Vladimir Kondratyev <[email protected]>
MFC after: 1 week


# 8c231786 01-May-2016 Benedict Reuschling <[email protected]>

Provide an example to the kqueue man page, showing
a basic usage example. Although it is an
untypical example for the use of kqueue, it is
better than nothing and should get people started.

PR: 1

Provide an example to the kqueue man page, showing
a basic usage example. Although it is an
untypical example for the use of kqueue, it is
better than nothing and should get people started.

PR: 196844
Submitted by: [email protected]
Reviewed by: kib
Approved by: kib
MFC after: 5 days
Differential Revision: https://reviews.freebsd.org/D6082

show more ...


1234