[systemd-devel] Significant performance loss caused by commit a65f06b: journal: return -ECHILD after a fork

Zbigniew Jędrzejewski-Szmek zbyszek at in.waw.pl
Fri Jul 7 22:34:22 UTC 2017


On Fri, Jul 07, 2017 at 02:35:16PM -0700, vcaputo at pengaru.com wrote:
> On Fri, Jul 07, 2017 at 01:49:54PM -0700, vcaputo at pengaru.com wrote:
> > On Fri, Jul 07, 2017 at 08:37:08PM +0000, Mantas MikulÄ—nas wrote:
> > > Back when that commit was made, didn't glibc cache the getpid() result in
> > > userspace? That would explain why it was not noticed.
> >
> > Hmm, this crossed my mind, and come to think of it I did a dist-upgrade
> > from Debian jessie to stretch overnight machine and haven't rebooted.
> > 
> > Perhaps the vdso isn't working and the costly getpid() is a red herring, will
> > reboot and retest to confirm.
> > 
> 
> It appears Debian has a glibc patch to disable the caching (I was unaware
> such an elaborate dance was being performed to cache this!)
> 
> https://anonscm.debian.org/cgit/pkg-glibc/glibc.git/commit/debian/patches/any?id=5850253f509604dd46a6131acc057ea26e1588ba

Do we know the justification for this patch?

> Unsure where I stand on core system software assuming certain syscalls are
> always going to be exceptionally cheap though...

Optimization is never in a vacuum. If glibc does something cheaply, it
seems reasonable to take advantage of it.

Zbyszek


More information about the systemd-devel mailing list