]> git.ipfire.org Git - thirdparty/systemd.git/blame - TODO
mount,crypto: rework meaning of noauto/nofail
[thirdparty/systemd.git] / TODO
CommitLineData
b7ff1e47
LP
1F15:
2
c904f64d
LP
3* swap units that are activated by one name but shown in the kernel under another are semi-broken
4
7d640cdf 5* NFS, networkmanager ordering issue (PENDING)
62170515 6
f80781ea
LP
7* NM should pull in network.target (PENDING)
8 https://bugzilla.redhat.com/show_bug.cgi?id=692008
9
222ae6a8
LP
10* bluetooth should be possible to disable (PENDING)
11
c904f64d
LP
12* add fstab fields to add wait timeouts, change Wants to Requires by local-fs.target
13
099663ff 14* bind mounts are ignored
cebe0d41 15 https://bugzilla.redhat.com/show_bug.cgi?id=682662
099663ff 16
099663ff 17* 0595f9a1c182a84581749823ef47c5f292e545f9 is borked, freezes shutdown
a49408ec 18 (path: after installing inotify watches, recheck file again to fix race)
b925e726 19
b9a2a36b 20* get writev() /dev/kmsg support into the F15 kernel
619c2581
KS
21 https://lkml.org/lkml/2011/4/6/473
22 patched merged into -mm
b9a2a36b 23
90a5f6e4
LP
24* fix sd_is_socket() invocation in dbus
25
3d3961f2
LP
26* fix default timeout values mentioned in man page
27
28* New CK release, with sysinit.target dropping and TTY loop
29
30* New Avahi package, enable it by default
31
32* don't trim empty cgroups
33 https://bugzilla.redhat.com/show_bug.cgi?id=678555
34
73090dc8
LP
35* drop cap bounding set in logger, hostnamed, readahead, ...
36
37* timeout value is incorrectly parsed in /etc/fstab
38
222ae6a8 39Features:
7d76f312 40
73090dc8
LP
41* Add ListenSpecial to .socket units for /proc/kmsg and similar friends?
42
43* avoid DefaultStandardOutput=syslog to have any effect on StandardInput=socket services
44
3d3961f2
LP
45* use pivot_root on shutdown so that we can unmount the root directory.
46
ba1a5515 47* fix alsa mixer restore to not print error when no config is stored
18a5d7ff 48
abf96c87
LP
49* show enablement status in systemctl status
50
68c7d001 51* write blog stories about:
68c7d001
LP
52 - enabling dbus services
53 - status update
73090dc8 54 - the new configuration files
3d3961f2 55 - you are a distro: why switch?
68c7d001 56
73090dc8
LP
57* maybe add tiny dbus services similar to hostnamed for locale?
58
3d57c6ab
LP
59* allow port = 0 in .socket units
60
9d8677da
LP
61* rename systemd-logger to systemd-stdio-syslog-bridge
62
63* introduce /usr/lib/binfmt.d/, /usr/lib/tmpfiles.d/
64
cca4aeee
LP
65* take BSD file lock on tty devices when using them?
66
16b879e3
KS
67* avoid any flag files, or readahead files in /, we need to support r/o /
68 or / on tmpfs like Android setups.
69
b9a2a36b
LP
70* move readahead files into /var, look for them with .path units
71
ba1a5515 72* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
9408a2d2 73
68c7d001
LP
74* get process transport into dbus for systemctl -P/-H
75
ba1a5515 76* document default dependencies
9408a2d2 77
d7cc2987
LP
78* support systemd.whitelist=/systemd.blacklist= on the kernel command
79 line.
80
3f7a8c4e
KS
81* Find a way to replace /var/run, /var/lock directories with
82 symlinks during an RPM package upgrade (filesystem.rpm or systemd.rpm).
619c2581 83 (lua code to create symlinks right away for new installations is in filesytem.rpm now)
b9a2a36b 84 We soon want to get rid of var-run.mount var-lock.mount units:
619c2581
KS
85 if mountpoint /run ; then
86 umount /var/run || :
87 else
88 mount --move /var/run /run || mount --bind /var/run /run
89 fi
90 mv /var/run /var/.run.save
91 ln -s /run /var/run
92 echo "R /var/.run.save" > /etc/tmpfiles.d/remove-run-save.conf
3f7a8c4e 93
f9276855
LP
94* when key file cannot be found, read it from kbd in cryptsetup
95
260abb78
LP
96* add switch to systemctl to show enabled but not running services. Or
97 another switch that shows service that have been running since
98 booting but aren't running anymore.
99
100* reuse mkdtemp namespace dirs in /tmp?
101
260abb78 102* recreate systemd's D-Bus private socket file on SIGUSR2
2791a8f8 103
7d9e57d2 104* be more specific what failed:
3f7a8c4e 105 ...
7d9e57d2
KS
106 Unmounting file systems.
107 Not all file systems unmounted, 1 left.
108 Disabling swaps.
109 Detaching loop devices.
110 Detaching DM devices.
111 Cannot finalize remaining file systems and devices, trying to kill remaining processes.
112 Unmounting file systems.
113 Not all file systems unmounted, 1 left.
114 Cannot finalize remaining file systems and devices, giving up.
3f7a8c4e 115 ...
2791a8f8 116
a49408ec
KS
117* check for compiled-in, but not active selinux, and don't print any warnings
118 about policy loading. Probably check for available selinux in /proc/filesystems,
119 and check for active selinux with getcon_raw() == "kernel"
120
a8f11321
LP
121* Support --test based on current system state
122
e85138e6
LP
123* systemctl enable as D-Bus call
124
81253930 125* consider services with any kind of link in /etc/systemd/system enabled
7fc7012b 126
430c18ed 127* show failure error string in "systemctl status"
1a6f4df6
LP
128
129* make sure timeouts are applied to Type=oneshot services.
130
a49408ec 131* Maybe implement "systemctl mask" and "systemctl unmask", but not
3db48a78
LP
132 document it? When doing that add switch to make this temporary by
133 placing mask links in /dev.
134
2e0d98fa
LP
135* detect LXC environment
136
62170515 137* invoke vhangup() before and after invoking getty
a49408ec 138 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3c95c985fa91ecf6a0e29622bbdd13dcfc5ce9f1
62170515 139
b5c6cf87
LP
140* support "auto" and "comment=systemd.automount" at the same time for an fstab entry
141
3185a36b 142* Maybe store in unit files whether a service should be enabled by default on package installation
7d9e57d2 143 (belongs into a distro pattern though, not in an upstream package's service file)
3185a36b 144
b8bb3e8f
LP
145* perhaps add "systemctl reenable" as combination of "systemctl disable" and "systemctl enable"
146
f959c5e6 147* need a way to apply mount options of api vfs from systemd unit files
b9a2a36b 148 (or some other modern source?) instead of fstab?
7f6d6135 149
c32e0c40
LP
150* maybe introduce ExecRestartPre=
151
47ae6e67
LP
152* figure out what happened to bluez patch
153
487a15bb
LP
154* Patch systemd-fsck to use -C and pass console fd to it
155
35f10fcc
LP
156* configurable jitter for timer events
157
3d3961f2
LP
158* Support ProcessNeededForShutdown=true to allow stuff like mdmon to
159 be killed very late after the rootfs is read only? If implement pass
160 this to shutdown binary via command line argument.
bf5bb531
KS
161
162* Integrate "mdadm --wait-clean". Maybe just let SIGTERM to mdmon trigger the
163 needed action
164
59fee421
LP
165* dot output for --test showing the 'initial transaction'
166
8c6db833 167* calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
351c7e74
KS
168 - check timerfd() patch: http://lkml.org/lkml/2010/11/23/290
169
170* systemd --user
171 - get PR_SET_ANCHOR merged: http://lkml.org/lkml/2010/2/2/165
172
173* add VT tracking:
a49408ec
KS
174 - provide CK functionality
175 - start getty only when actual vt switch happens (same model as
176 socket on-demand activation). allocate the next free tty and
177 start a getty there. this way, pressing alt-f[1-12] will switch
178 through running X and getty sessions, and any unallocated
179 activated tty will start a new getty. the hardcoding of
180 getty[1-6] will entirely go away.
181 - http://git.kernel.org/?p=linux/kernel/git/gregkh/tty-2.6.git;a=commitdiff;h=fbc92a3455577ab17615cbcb91826399061bd789
75787bb7 182
129126f3 183* implicitly import "defaults" settings file into all types
75787bb7 184
129126f3 185* port over to LISTEN_FDS/LISTEN_PID:
7d9e57d2
KS
186 - uuidd HAVEPATCH
187 - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
188 - cups HAVEPATCH
a625ac1a 189 - postfix, saslauthd
a625ac1a
LP
190 - apache/samba
191 - libvirtd (/var/run/libvirt/libvirt-sock-ro)
192 - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
a625ac1a
LP
193 - distccd
194
68c7d001 195* fingerprint.target, wireless.target, gps.target, netdevice.target
0ff3dea7 196
647703fe 197* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
246756ca 198
50f2a90d 199* io priority during initialization
8fe914ec 200
74ac3cbd 201* if a service fails too often, make the service enter failed mode, and the socket, too.
ea4a240d 202
647703fe 203* systemctl list-jobs - show dependencies
63090775 204
20604ebc
LP
205* auditd service files
206
20604ebc
LP
207* add systemctl switch to dump transaction without executing it
208
7d9e57d2 209* suspend, resume support?
da726a4d 210
1a34d367
LP
211* readahead: btrfs/LVM SSD detection
212
ed1c99fc 213* add separate man page for [Install] settings
98e1f931 214
42e8a0a8
LP
215* allow runtime changing of log level and target
216
2f8cd170 217External:
74fe1fe3 218
f959c5e6
LP
219* udisks should not use udisks-part-id, instead use blkid. also not probe /dev/loopxxx
220
221* snd-seq should go, https://bugzilla.redhat.com/show_bug.cgi?id=676095
222
7d9e57d2 223* gnome-shell python script/glxinfo/is-accelerated must die
f959c5e6 224
74fe1fe3
LP
225* make cryptsetup lower --iter-time
226
06ae4bfe
LP
227* patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup.
228
6f3f9deb 229* patch kernel for cpu feature modalias for autoloading aes/kvm/...
fc84026d 230 http://git.kernel.org/?p=linux/kernel/git/ak/linux-misc-2.6.git;a=shortlog;h=refs/heads/cpuid-match
7d9e57d2 231 (Rafael J. Wysocki's sysdev rework is on the way. After that CPUs can be exported a proper bus.)
6f3f9deb 232
26192dfc
LP
233* procps, psmisc, sysvinit-tools, hostname → util-linux-ng
234
50f2a90d
LP
235https://bugzilla.redhat.com/show_bug.cgi?id=614245 -- plymouth
236https://bugzilla.redhat.com/show_bug.cgi?id=612789 -- umount /cgroup on halt
237https://bugzilla.redhat.com/show_bug.cgi?id=612728 -- /etc/rc.d/init.d/functions
238https://bugzilla.redhat.com/show_bug.cgi?id=612712 -- pam_systemd
239https://bugs.freedesktop.org/show_bug.cgi?id=29193 -- accountsservice
240https://bugs.freedesktop.org/show_bug.cgi?id=29194 -- ConsoleKit
5e5c6cd7
LP
241https://bugs.freedesktop.org/show_bug.cgi?id=29205 -- udisks
242http://article.gmane.org/gmane.linux.bluez.kernel/6479 -- bluez
50f2a90d 243http://www.spinics.net/lists/linux-nfs/msg14371.html -- rpcbind
b5e9dba8
LP
244https://bugzilla.redhat.com/show_bug.cgi?id=617328 -- ntp
245https://bugzilla.redhat.com/show_bug.cgi?id=617320 -- at
246https://bugzilla.redhat.com/show_bug.cgi?id=617326 -- fprintd
247https://bugzilla.redhat.com/show_bug.cgi?id=617333 -- yum
248https://bugzilla.redhat.com/show_bug.cgi?id=617317 -- acpid
249https://bugzilla.redhat.com/show_bug.cgi?id=617327 -- gpm
250https://bugzilla.redhat.com/show_bug.cgi?id=617330 -- pcsc-lite
251https://bugzilla.redhat.com/show_bug.cgi?id=617321 -- audit
02ee865a 252https://bugzilla.redhat.com/show_bug.cgi?id=617316 -- abrt
14bd37fe 253
129126f3 254Regularly:
874aa2cc 255
129126f3 256* look for close() vs. close_nointr() vs. close_nointr_nofail()
5021be21 257
129126f3 258* check for strerror(r) instead of strerror(-r)
5b6319dc
LP
259
260* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
8c6db833
LP
261
262* %m in printf() instead of strerror();
444a79d3
LP
263
264* pahole
265
266* CFLAGS="-Wl,--gc-sections -Wl,--print-gc-sections -ffunction-sections -fdata-sections"