]> git.ipfire.org Git - thirdparty/systemd.git/blame - TODO
tainted: don't check if /usr is a mount point, only if it's not already mounted at...
[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
b7ff1e47
LP
5* dep cycle basic → udev-retry → auditd → iptables → basic
6
c32e0c40
LP
7* isolate multi-user.target doesn't start a getty@tty1 if we run it from graphical.target
8
7d640cdf 9* NFS, networkmanager ordering issue (PENDING)
62170515 10
c904f64d
LP
11* add fstab fields to add wait timeouts, change Wants to Requires by local-fs.target
12
13* hook emergency.target into local-fs.target in some way as OnFailure with isolate
14
7d640cdf 15* drop SIGHUP handling from rsyslog.service upstream (PENDING)
6e25b33c 16
34df5a34
LP
17* teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
18
7d640cdf 19* save/restore tool for SysV as requested by FPC (PENDING)
34df5a34 20
099663ff
LP
21* bind mounts are ignored
22
099663ff 23* 0595f9a1c182a84581749823ef47c5f292e545f9 is borked, freezes shutdown
a49408ec 24 (path: after installing inotify watches, recheck file again to fix race)
b925e726 25
a0e155d4 26* NM should pull in network.target, ntpd should pull in rtc-set.target.
e677657e 27
9700edb4
LP
28* fix sysv parser to add right wants dependencies
29
f1dd0c3f
LP
30* document default dependencies
31
fc7ac594 32Features:
260abb78
LP
33
34* hide passwords on TAB
35
4d99d2fd
KS
36* get rid of random file name in generator directory?
37 /run/systemd/generator-IH1vFu
38
7a03b197
KS
39* fix SD_WARNING syslog stuff in src/sd-daemon.h to include the
40 facility
41
260abb78
LP
42* add switch to systemctl to show enabled but not running services. Or
43 another switch that shows service that have been running since
44 booting but aren't running anymore.
45
46* reuse mkdtemp namespace dirs in /tmp?
47
2791a8f8 48* don't strip facility from kmsg log messages as soon as that is possible.
a49408ec 49 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=9d90c8d9cde929cbc575098e825d7c29d9f45054
7d9e57d2 50
260abb78 51* recreate systemd's D-Bus private socket file on SIGUSR2
2791a8f8 52
7d9e57d2
KS
53* be more specific what failed:
54 Unmounting file systems.
55 Not all file systems unmounted, 1 left.
56 Disabling swaps.
57 Detaching loop devices.
58 Detaching DM devices.
59 Cannot finalize remaining file systems and devices, trying to kill remaining processes.
60 Unmounting file systems.
61 Not all file systems unmounted, 1 left.
62 Cannot finalize remaining file systems and devices, giving up.
2791a8f8 63
a49408ec
KS
64* check for compiled-in, but not active selinux, and don't print any warnings
65 about policy loading. Probably check for available selinux in /proc/filesystems,
66 and check for active selinux with getcon_raw() == "kernel"
67
099663ff
LP
68* optionally create watched directories in .path units
69
a8f11321
LP
70* Support --test based on current system state
71
81253930
LP
72* consider services with no [Install] section and stored in /lib enabled by "systemctl is-enabled"
73
74* consider services with any kind of link in /etc/systemd/system enabled
7fc7012b 75
430c18ed 76* show failure error string in "systemctl status"
1a6f4df6
LP
77
78* make sure timeouts are applied to Type=oneshot services.
79
a49408ec 80* Maybe implement "systemctl mask" and "systemctl unmask", but not
3db48a78
LP
81 document it? When doing that add switch to make this temporary by
82 placing mask links in /dev.
a49408ec
KS
83 Consider moving the actual fs operations into systemd behind a D-Bus
84 interface, to make namespaces/containers/remote connections work properly.
3db48a78 85
2e0d98fa
LP
86* detect LXC environment
87
62170515 88* invoke vhangup() before and after invoking getty
a49408ec 89 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3c95c985fa91ecf6a0e29622bbdd13dcfc5ce9f1
62170515 90
b5c6cf87
LP
91* support "auto" and "comment=systemd.automount" at the same time for an fstab entry
92
3185a36b 93* Maybe store in unit files whether a service should be enabled by default on package installation
7d9e57d2 94 (belongs into a distro pattern though, not in an upstream package's service file)
3185a36b 95
b8bb3e8f
LP
96* perhaps add "systemctl reenable" as combination of "systemctl disable" and "systemctl enable"
97
f959c5e6
LP
98* need a way to apply mount options of api vfs from systemd unit files
99 (or some other modern source?) instead of fstab
7f6d6135 100
c32e0c40
LP
101* maybe introduce ExecRestartPre=
102
47ae6e67
LP
103* figure out what happened to bluez patch
104
487a15bb
LP
105* Patch systemd-fsck to use -C and pass console fd to it
106
2c4b304e
LP
107* support remote/ssh systemctl/systemadm, and local privileged access
108
35f10fcc
LP
109* configurable jitter for timer events
110
bf5bb531 111* Support ProcessNeededForShutdown=true to allow stuff like mdmon
f959c5e6 112 to be killed very late after the rootfs is read only (?)
bf5bb531
KS
113
114* Integrate "mdadm --wait-clean". Maybe just let SIGTERM to mdmon trigger the
115 needed action
116
59fee421
LP
117* dot output for --test showing the 'initial transaction'
118
8c6db833 119* calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
351c7e74
KS
120 - check timerfd() patch: http://lkml.org/lkml/2010/11/23/290
121
122* systemd --user
123 - get PR_SET_ANCHOR merged: http://lkml.org/lkml/2010/2/2/165
124
125* add VT tracking:
a49408ec
KS
126 - provide CK functionality
127 - start getty only when actual vt switch happens (same model as
128 socket on-demand activation). allocate the next free tty and
129 start a getty there. this way, pressing alt-f[1-12] will switch
130 through running X and getty sessions, and any unallocated
131 activated tty will start a new getty. the hardcoding of
132 getty[1-6] will entirely go away.
133 - http://git.kernel.org/?p=linux/kernel/git/gregkh/tty-2.6.git;a=commitdiff;h=fbc92a3455577ab17615cbcb91826399061bd789
75787bb7 134
129126f3 135* implicitly import "defaults" settings file into all types
75787bb7 136
129126f3 137* port over to LISTEN_FDS/LISTEN_PID:
7d9e57d2
KS
138 - uuidd HAVEPATCH
139 - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
140 - cups HAVEPATCH
a625ac1a 141 - postfix, saslauthd
a625ac1a
LP
142 - apache/samba
143 - libvirtd (/var/run/libvirt/libvirt-sock-ro)
144 - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
a625ac1a
LP
145 - distccd
146
064f51fa 147* fingerprint.target, wireless.target, gps.target
0ff3dea7 148
647703fe 149* set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
246756ca 150
50f2a90d 151* io priority during initialization
8fe914ec 152
74ac3cbd 153* if a service fails too often, make the service enter failed mode, and the socket, too.
ea4a240d 154
647703fe 155* systemctl list-jobs - show dependencies
63090775 156
313ed05b 157* accountsservice is borked
63090775 158
20604ebc
LP
159* auditd service files
160
20604ebc
LP
161* add systemctl switch to dump transaction without executing it
162
7d9e57d2 163* suspend, resume support?
da726a4d 164
1a34d367
LP
165* readahead: btrfs/LVM SSD detection
166
ed1c99fc 167* add separate man page for [Install] settings
98e1f931 168
510051fc 169* only add quotacheck deps to .mount units which mention grpquota/usrquota in the mount flags
e5ebf783 170
9fe117ea
LP
171* systemctl condrestart should return 0 if service isn't running
172
42e8a0a8
LP
173* allow runtime changing of log level and target
174
2f8cd170 175External:
74fe1fe3 176
f959c5e6
LP
177* udisks should not use udisks-part-id, instead use blkid. also not probe /dev/loopxxx
178
179* snd-seq should go, https://bugzilla.redhat.com/show_bug.cgi?id=676095
180
7d9e57d2 181* gnome-shell python script/glxinfo/is-accelerated must die
f959c5e6 182
74fe1fe3
LP
183* make cryptsetup lower --iter-time
184
06ae4bfe
LP
185* patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup.
186
6f3f9deb 187* patch kernel for cpu feature modalias for autoloading aes/kvm/...
fc84026d 188 http://git.kernel.org/?p=linux/kernel/git/ak/linux-misc-2.6.git;a=shortlog;h=refs/heads/cpuid-match
7d9e57d2 189 (Rafael J. Wysocki's sysdev rework is on the way. After that CPUs can be exported a proper bus.)
6f3f9deb 190
26192dfc
LP
191* procps, psmisc, sysvinit-tools, hostname → util-linux-ng
192
50f2a90d
LP
193https://bugzilla.redhat.com/show_bug.cgi?id=614245 -- plymouth
194https://bugzilla.redhat.com/show_bug.cgi?id=612789 -- umount /cgroup on halt
195https://bugzilla.redhat.com/show_bug.cgi?id=612728 -- /etc/rc.d/init.d/functions
196https://bugzilla.redhat.com/show_bug.cgi?id=612712 -- pam_systemd
197https://bugs.freedesktop.org/show_bug.cgi?id=29193 -- accountsservice
198https://bugs.freedesktop.org/show_bug.cgi?id=29194 -- ConsoleKit
5e5c6cd7
LP
199https://bugs.freedesktop.org/show_bug.cgi?id=29205 -- udisks
200http://article.gmane.org/gmane.linux.bluez.kernel/6479 -- bluez
50f2a90d 201http://www.spinics.net/lists/linux-nfs/msg14371.html -- rpcbind
b5e9dba8
LP
202https://bugzilla.redhat.com/show_bug.cgi?id=617328 -- ntp
203https://bugzilla.redhat.com/show_bug.cgi?id=617320 -- at
204https://bugzilla.redhat.com/show_bug.cgi?id=617326 -- fprintd
205https://bugzilla.redhat.com/show_bug.cgi?id=617333 -- yum
206https://bugzilla.redhat.com/show_bug.cgi?id=617317 -- acpid
207https://bugzilla.redhat.com/show_bug.cgi?id=617327 -- gpm
208https://bugzilla.redhat.com/show_bug.cgi?id=617330 -- pcsc-lite
209https://bugzilla.redhat.com/show_bug.cgi?id=617321 -- audit
02ee865a 210https://bugzilla.redhat.com/show_bug.cgi?id=617316 -- abrt
14bd37fe 211
129126f3 212Regularly:
874aa2cc 213
129126f3 214* look for close() vs. close_nointr() vs. close_nointr_nofail()
5021be21 215
129126f3 216* check for strerror(r) instead of strerror(-r)
5b6319dc
LP
217
218* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
8c6db833
LP
219
220* %m in printf() instead of strerror();
444a79d3
LP
221
222* pahole
223
224* CFLAGS="-Wl,--gc-sections -Wl,--print-gc-sections -ffunction-sections -fdata-sections"