aboutsummaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2018-07-25 20:36:11 +0200
committerLennart Poettering <lennart@poettering.net>2018-07-25 22:48:11 +0200
commitfcb975129693d2d82dafb839fa66b9ac027bb080 (patch)
tree96f1a89b838b55a8ea90920d1896c6f70a0d88ac /NEWS
parenttest: add test for Type=exec (diff)
downloadsystemd-fcb975129693d2d82dafb839fa66b9ac027bb080.tar.gz
systemd-fcb975129693d2d82dafb839fa66b9ac027bb080.tar.bz2
systemd-fcb975129693d2d82dafb839fa66b9ac027bb080.zip
NEWS: add entry about Type=exec and announce that systemd-run is going to default to it in 241
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS27
1 files changed, 27 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 537c4b613..0d5b95a42 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,32 @@
systemd System and Service Manager
+CHANGES WITH 240 in spe:
+
+ * A new service type has been added: Type=exec. It's very similar to
+ Type=simple and ensures the service manager will wait for both fork()
+ and execve() of the main service binary to complete before proceeding
+ with follow-up units. This is primarily useful so that the manager
+ propagates any errors in the preparation phase of service execution
+ back to the job that requested the unit to be started. For example,
+ consider a service that has ExecStart= set to a file system binary
+ that doesn't exist. With Type=simple starting the unit would
+ typically succeed instantly, as only fork() has to complete
+ successfully and execve() is not waited for, and hence its failure is
+ seen "too late". With the new Type=exec service type starting the
+ unit will fail, as the execve() will be waited for and will fail,
+ which is then propagated back to the start job.
+
+ NOTE: with the next release 241 of systemd we intend to change the
+ systemd-run tool to default to Type=exec for transient services
+ started by it. This should be mostly safe, but in specific corner
+ cases might result in problems, as the systemd-run tool will then
+ block on NSS calls (such as user name lookups due to User=) done
+ between the fork() and execve(), which under specific circumstances
+ might cause problems. It is recommended to specify "-p Type=simple"
+ explicitly in the few cases where this applies. For regular,
+ non-transient services (i.e. those defined with unit files on disk)
+ we will continue to default to Type=simple.
+
CHANGES WITH 239:
* NETWORK INTERFACE DEVICE NAMING CHANGES: systemd-udevd's "net_id"