|
|
Log in / Subscribe / Register

Shared libraries

Shared libraries

Posted Nov 25, 2025 18:12 UTC (Tue) by Cyberax (✭ supporter ✭, #52523)
In reply to: Shared libraries by josh
Parent article: APT Rust requirement raises questions

Won't help. The binary of "Component A" might not have loaded the library at the time of the replacement.

This is not theoretical, that's how new systemd behaves. It loads libraries dynamically using dlopen().


to post comments

Shared libraries

Posted Nov 26, 2025 9:14 UTC (Wed) by taladar (subscriber, #68407) [Link] (1 responses)

This is not just a library issue either, it can also happen with data files or helper binaries that communicate via entirely different interfaces (e.g. browser tab helper processes).

Depending on the design of the program it might even happen if you make a config change and some more recently loaded part of the whole package (library, binary,...) reads the new configuration and the longer running parts use the old.

Sometimes that is even deliberate as part of some reload mechanism where a new binary loads a new config, then gets file handles for sockets and similar resources from the old binary so even using something like a snapshot of the filesystem from the time the first part of the package is started wouldn't be a universal solution.

Shared libraries

Posted Nov 26, 2025 18:43 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link]

Indeed. But we actually have pretty good "ABI layers" for IPC. Everything from OpenAPI to Protobuf/CapnProto descriptions.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds