remi at remlab.net
Sat May 8 12:55:27 PDT 2010
Le samedi 8 mai 2010 22:35:39 Lennart Poettering, vous avez écrit :
> On Sat, 08.05.10 21:44, Rémi Denis-Courmont (remi at remlab.net) wrote:
> > Le samedi 8 mai 2010 18:46:49 Lennart Poettering, vous avez écrit :
> > > > As far as I know, SOCK_SEQPACKET means any single DBus message must
> > > > fit in the kernel-space socket buffer. Currently that defaults to
> > > > 128kb on Linux. Not sure what limit distros configure the
> > > > dbus-daemon with, but the protocol allows for much much large
> > > > packets.
> > >
> > > D-Bus enforces a configurable maximum message size anyway. We should be
> > > able to tune SO_SNDBUF/SO_RCVBUF to the same value.
> > To clarify: Linux per-socket buffer limit defaults to 128kB total (all
> > queued packets). This is a hard limit. Only root can change the value.
> Well, for the system bus it's root too that controls the max message
> size, so this is kinda fitting, I gues..
Are you suggesting the (system) DBus daemon should change the maximum socket
buffer size?? That seems ugly to me. I don't need to mention that it will
apply not just to DBus sockets, but to all Unix sockets, and in fact all
sockets in all families.
It's also buggy as you have no way to atomically "set sysctl value to X if and
only if current value is less than X".
More information about the dbus