Age | Commit message (Collapse) | Author | Files | Lines |
|
In practice this is global in dbus-daemon, but in principle it could
differ per-connection.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
There are no actual statistics yet, just a count of how many times the
method has been called, and (for the per-connection stats) the unique name.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
|
|
We don't allow match rules with unknown message types, so losing the
"type='%d'" case isn't a great loss.
|
|
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34393
|
|
Finalizing the reply could conceivably call callbacks, so wait til we
unlock.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34393
|
|
Finalizing a message can trigger callbacks; that's bad, if we have a
connection locked.
In particular, if a message is received by the "left side", passed to
the "right side" and sent (as in test/relay.c (see the diagram there)
or in dbus-daemon), then finalizing that message could result in the
live messages counter for the left side, and the outgoing messages counter
for the right side, both being decremented while under either side's
lock.
After a message is dispatched on the left side, finalizing it now drops
the lock temporarily, to avoid this problem.
After a message is sent on the right side, finalizing it is now deferred
until the right side unlocks, by moving it to a new queue of
"expired messages" which is automatically cleared every time we release
the lock.
The "live messages" counter for the "left" connection will now explicitly
take the left connection's lock before decrementing, to avoid
manipulating watches without a lock.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34393
|
|
It's about to become more complex, to handle delayed deallocation of
messages in order to avoid triggering callbacks while locked.
|
|
In all the places where counters are added, we're under a lock. The caller
knows what effect adding the counter might have, and can replicate it
in a lock-safe way if necessary.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34393
|
|
In general, dbus_message_unref should be avoided while holding locks,
because it can invoke arbitrary user callbacks (via attached data, or
via DBusCounter).
|
|
When fd-passing is implemented, adjustments happen in pairs; in that case
we coalesce the two calls into one.
|
|
It's called with the connection's lock held.
|
|
Finalizing a message can call out to user code via dbus_message_set_data
(or to internal code not expecting locks to be held, via DBusCounter).
|
|
The number of messages is arbitrary; the more messages, the more likely
the crash is. 2000 messages seem to cause it reliably, on this laptop.
The script may have race conditions (there are a couple of hard-coded sleep
calls), so I haven't set it up to be run automatically.
|
|
|
|
Conflicts:
NEWS
|
|
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
Conflicts:
configure.ac
doc/Makefile.am
|
|
|
|
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
|
|
Reviewed-by: Colin Walters <walters@verbum.org>
|
|
|
|
In an embedded system where the D-Bus session is a core part of the
environment, like Maemo, accidentally auto-launching a second session bus
(for instance for a concurrent ssh session) is a bad idea - it can lead
to a "split brain" situation where half the applications in the GUI are
using a different bus. In these controlled environments, it'd be useful
to prevent autolaunch from ever happening.
(As a side benefit, the changes to configure.in also mean that packagers
can explicitly --enable-x11-autolaunch, to make sure that failure to find
X will make compilation fail cleanly.)
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19997
Bug-NB: NB#219964
|
|
The known use cases for autolaunching (ssh -Y firefox,
run konqueror in legacy DE) all need $DISPLAY too.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19997
|
|
|
|
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
|
|
|
|
According to the XDG Base Directory Specification, “the base directory
defined by $XDG_DATA_HOME is considered more important than any of the
base directories defined by $XDG_DATA_DIRS.” This makes it easier to
override a system service file as a normal user.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34496
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Part of a patch by Javier Jardón.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Part of a patch by Javier Jardón.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Part of a patch by Javier Jardón.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Part of a patch by Javier Jardón.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Part of a patch by Javier Jardón.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Part of a patch by Javier Jardón.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Part of a patch by Javier Jardón.
(This will conflict with changes from my gc-sections branch -smcv)
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|