Bug 7998 - Generalize kqueue support
Summary: Generalize kqueue support
Alias: None
Product: dbus
Classification: Unclassified
Component: core (show other bugs)
Version: unspecified
Hardware: x86 (IA32) NetBSD
: high normal
Assignee: Havoc Pennington
QA Contact: John (J5) Palmieri
Keywords: patch
Depends on:
Blocks: 7813
  Show dependency treegraph
Reported: 2006-08-25 06:48 UTC by Julio Merino
Modified: 2006-08-25 12:20 UTC (History)
0 users

See Also:
i915 platform:
i915 features:

Proposed patch. (3.42 KB, patch)
2006-08-25 06:50 UTC, Julio Merino
Details | Splinter Review

Description Julio Merino 2006-08-25 06:48:44 UTC
The new 0.92 D-Bus release includes support for FreeBSD's kqueue event
notification mechanism.  Unfortunately, the changes were applied in such a way
that assumes that ONLY FreeBSD has kqueue support.  This is incorrect because
other operating systems support this interface such as NetBSD.  Even more, one
could implement a kqueue interface under Linux some day (I mean that it is not
restricted to *BSD.)

I've changed the code to correctly detect kqueue presence with "dynamic" checks
to avoid hardcoding the FreeBSD name.  After that, kqueue support builds nicely
under NetBSD.  Patch attached.
Comment 1 Julio Merino 2006-08-25 06:50:25 UTC
Created attachment 6684 [details] [review]
Proposed patch.

I've also seized the patch to make the --enable-kqueue flag difference the
auto/yes values.  When yes is given, kqueue must be present.  If auto is
provided (the default), the same behavior as before is kept.
Comment 2 John (J5) Palmieri 2006-08-25 08:31:04 UTC
Cool thanks.  I'm putting it on the blocker so I remeber to commit it
Comment 3 Julio Merino 2006-08-25 09:57:35 UTC
Oh, by the way.... the README could benefit of a '--enable-kqueue' entry in the
options summary.  (But this is unrelated to this change.)
Comment 4 John (J5) Palmieri 2006-08-25 12:20:34 UTC
Committed, thanks.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.