3 ms·
I love the systemd principles, as they were outlined by Poettering in the initial announcement. Configuration files instead of boilerplate shell script (and wor
by mercurial 11y ago
I love the systemd principles, as they were outlined by Poettering in the initial announcement. Configuration files instead of boilerplate shell script (and worse, shell script with special comments), socket-based startup, massive parallelism, cgroups, the end of PID files...
I just wish systemd itself had stayed there and that the additional functionalities it keeps developing lived in separate projects with well-defined interfaces.
- vezzy-fnord 11y agoI find it disputable that parallelism is all that desirable. In systemd's case it requires the introduction of the dependency system with its multifaceted job queueing modes and transaction management that easily make up its most brittle edges, at least w.r.t. to its service manager, specifically. Seemingly innocuous configurations can result in cyclical transactions and dependency loops, and the internal graph engine bookkeeping these relationships provides very little debugging context at all. Considering parallelism is about startup optimization, a much better option is to load a process from a checkpoint image, e.g. one taken by CRIU or DMTCP.
- simoncion 11y ago> ...a much better option is to load a process from a checkpoint image, e.g. one taken by CRIU or DMTCP. Almost completely unrelated: Two things that came out of the LKML examination of kdbus during the 4.1 merge request were: 1) kdbus makes assumptions that break CRIU and similar projects 2) The kdbus people didn't seem to care much about this fact So... the "ultimate" systemd setup may very well preclude the use of process checkpointers to speed up startup. :(
- vezzy-fnord 11y agoWow, I wasn't aware of that. Do you have a reference?
- simoncion 11y agoSadly, no. I actually might have mis-remembered that detail and made a liar of myself. :( I tried to go back through the 4.1-rc1 kdbus merge request saga, but Gmane is so slow as to be unusable today and the only other lkml archive I can find that shows me the whole discussion [0] doesn't appear to do threads. [1] A search for "CRIU" reveals Lutomirski mentioning that a particular bit of info passed around by kdbus ("starttime") would break CRIU. Greg K-H says "'starttime' has been removed for a while now. You sure that you're looking at latest?" Lutomirski says something to the effect of: "No, I haven't taken a close look at latest, just checked to see if that thing that I thought was really bad was still in it, and it was." Later, I see Lutomirski wondering if kdbus would interact with '/proc/<pid>/map_files' in such a way as to break CRIU, but Michal Hocko says something to the effect of "Eh, it looks like it shouldn't, but I can't know for sure.". Because I don't have the thread structure, I can't be sure that there weren't replies to any of those messages from folks who felt that there was a problem for CRIU. However, as it stands now, it's pretty safe to say that I fabricated a bucket of mud and threw it around. Sorry. Mea culpa. :( [0] http://www.gossamer-threads.com/lists/engine?do=post_view_printable;post=2149580;list=linux http://www.gossamer-threads.com/lists/engine?do=post_view_pr... (Print dialog warning) [1] I've just gotta ask: am I an idiot, or is Google Groups's mailing list search feature absolutely terrible? I ask it to give me all instances of "CRIU" in a particular LKML thread. It gives me a pointer to the start of that thread, leaving me to go through messages ~20 at a time to find the messages I care about.