Originally posted by Naib
View Post
Announcement
Collapse
No announcement yet.
Systemd 230 Is Upsetting Some Over Its KillUserProcess Setting
Collapse
X
-
-
Originally posted by bkor View Post
You're claiming that dbus and GNOME aren't cleaning up and thus this change is triggered by this behaviour. Eventhough these parts of GNOME and dbus existed before systemd was started. In brief: you're bullshitting. GNOME (gnome-session) does handle child processes correctly as well as dbus. Either provide clear evidence or maybe just simple stop spreading misinformation about dbus and GNOME.
Comment
-
Originally posted by Naib View Post>This was raised 5 years ago and just IGNORED ...
"change how daemon() is implemented" is very vague and gives NO guarantee that it would work better, and it would probably cause major breakage all-around since they will probably have to change things and ALL programs under the sun that use it may be affected.
You just found a guy that wants to redesign everything around his stuff, but since he is calling down UNIX phylosophy and shit you feel more attuned.
The little issue is that he isn't making an init system, so he does not get to decide about these matters.
kernel->init->userspace libraries this is the chain of command.
- Likes 1
Comment
-
Originally posted by bkor View Post
You're claiming that dbus and GNOME aren't cleaning up and thus this change is triggered by this behaviour. Eventhough these parts of GNOME and dbus existed before systemd was started. In brief: you're bullshitting. GNOME (gnome-session) does handle child processes correctly as well as dbus. Either provide clear evidence or maybe just simple stop spreading misinformation about dbus and GNOME.
- Likes 1
Comment
-
Originally posted by starshipeleven View Postit wasn't "raised".
"change how daemon() is implemented" is very vague and gives no guarantee that it would work better, and it would probably cause major breakage all-around since they will probably have to change things and all programs under the sun that use it may be affected.
You just found a guy that wants to redesign everything around his stuff, but since he is calling down unix phylosophy and shit you feel more attuned.
The little issue is that he isn't making an init system, so he does not get to decide about these matters.
Kernel->init->userspace libraries this is the chain of command.
unix has always worked in the same way. If you logout then programs are
killed, unless they daemonize (which is pretty standard by now) in which
case they sit around until you kill them.
and sysadmins of course can kill your stuff whenever they like.
so, why is systemd different here?
- Likes 1
Comment
-
Originally posted by Naib View Post(citing someone else)
unix has always worked in the same way. If you logout then programs are
killed, unless they daemonize (which is pretty standard by now) in which
case they sit around until you kill them.
and sysadmins of course can kill your stuff whenever they like.
so, why is systemd different here?
systemd is shifting the "program dies because it's a child of X and X is killed" paradigm which can and does fail to "systemd kills all stuff that isn't allowed to live when X is killed" which has less chances to fail since systemd is an active system.
This is in line with systemd project's idea of hardening things, and of providing a init system that is active and uses its init power to actually do things instead of just sitting on it.
- Likes 2
Comment
-
Daemon(3) has existed for a long time, it is the established way for a process to demonize itself. This works, this is understood, there is no reason to break this…. Unless you chuck in incompetent and arrogant developers. its not "flat out wrong" as you state.
You talk about a broken pipeline yet it was broken by GNOME/DBUS unable to sort out the exit sequence NOT via tmux, nohup, bg, screen, etc…
You want to talk about broken? Systemd makes use of SIGKILL to clean up https://www.freedesktop.org/software...temd.kill.html . I am guessing you are not aware as to why this is bad…
No no no. Don't use kill -9.
It doesn't give the process a chance to cleanly:
1) shut down socket connections
2) clean up temp files
3) inform its children that it is going away
4) reset its terminal characteristics
and so on and so on and so on.
Generally, send 15, and wait a second or two, and if that doesn't work, send 2, and if that doesn't work, send 1. If that doesn't, REMOVE THE BINARY because the program is badly behaved!
Don't use kill -9. Don't bring out the combine harvester just to tidy up the flower pot.
Comment
Comment