[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#993821: After upgrading libc, some services are unable to restart (including systemd-resolved)



Hi Aurelien

Am 07.09.21 um 12:41 schrieb Aurelien Jarno:
Hi,

On 2021-09-07 10:39, Michael Hudson-Doyle wrote:

What's happening is that systemd is running with the old glibc, forks and
then does NSS things that cause the new glibc's NSS modules to load and
they don't necessarily work, leading to failures in any unit that specifies
User=. At least for Ubuntu's builds the NSS modules seem to be ABI
compatible between 2.32 and 2.33 (I didn't try 2.31 vs 2.32) but they are
definitely not between 2.33 and 2.34.

Thanks for this feedback and the pointer to the patch used in Ubuntu. It
seems to be a good solution, and matches what is done for other init
systems.

On the other hand, the problem is supposed to only happen for major
glibc version upgrade where the NSS modules might have a different ABI.
In that regard, I would be tempted to restart it only for major versions
upgrade like it's done for other daemons. Now if the systemd maintainers
consider it's fine restarting it for each glibc upgrade, we should
probably go that way.

I guess you are in a better position to make a judgement call here. If I read the glibc bug report correctly, there aren't strictly any guarantees regarding NSS modules. What that means for glibc minor updates, I'm not really in a position to tell.

Fwiw, I don't have a better proposal then Michael's patch he added to Ubuntu. We could run with that and if it causes problems, reiterate on it.

Regards,
Michael


Reply to: