On Mon, 16.12.13 16:54, Lennart Poettering (lenn...@poettering.net) wrote: > > That's it. > > > > While journal code tries to set buffer size via SO_SNDBUF/SO_RCVBUF > > options to 8MB, kernel limits these to wmem_max/rmem_max. On machines > > I've tested respective values are quite small - around 150-200kB each. > > Hmm, so on the journald's side we actually use SO_RCVBUFFORCE to > override that kernel limit. If I understood you correctly though then > SO_SNDBUF on the sending side is the issue here, not SO_RCVBUF on the > receiving side. > > We could certainly update src/journal/journal-send.c to also use > SO_SNDBUFFORCE on the client side, but that would leave unpriviliged > clients and traditional /dev/log clients in the cold, since the > SO_SNDBUFFORCE requires privs, and the client side for /dev/log lives in > glibc, not in systemd.
I made such a change in git now. But again, this is only a very partial solution, as it only covers native clients with priviliges. It does not cover unpriviliged clients or traditional syslog() clients... Also, it cannot influence the qlen. But I fear the rest of this really needs to be fixed in the kernel (and glibc), we cannot do much about this from the systemd side... Lennart -- Lennart Poettering, Red Hat _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel