chiark / gitweb /
da6cce1dc9451f46e03dc93ebb50c367d65c4307
[elogind.git] / TODO
1 Bugfixes:
2
3 * swap units that are activated by one name but shown in the kernel under another are semi-broken
4
5 * NM should pull in network.target (PENDING)
6   https://bugzilla.redhat.com/show_bug.cgi?id=692008
7
8 * make anaconda write timeout=0 for encrypted devices
9
10 * fix broken Sockets=syslog-ng.socket packaging
11
12 * logind: ensure ACLs are updated on login and logout
13
14 * fix CUPS .path unit for globbing
15
16 * service: pid file reading after reload doesn't work, since we don't reset the pid variable
17
18 * make sure timeouts are applied to Type=oneshot services.
19
20 Features:
21
22 * allow Type=simple with PIDFile=
23   https://bugzilla.redhat.com/show_bug.cgi?id=723942
24
25 * rename systemd-logger to systemd-stdio-syslog-bridge
26
27 * file bugs against sysklogd, syslog-ng because of StandardOuput=null
28 * turn default stdout/stderr to syslog (after rsyslog got updated)
29
30 * move PAM code into its own binary
31
32 * warn if the user stops a service but not its associated socket
33
34 * logind: spawn user@..service on login
35
36 * logind: non-local X11 server handling
37
38 * logind: use sysfs path in device hash table instead of sysname, as soon as fb driver is fixed
39
40 * timedated: implement NTP calls
41
42 * implement Register= switch in .socket units to enable registration
43   in Avahi, RPC and other socket registration services.
44
45 * make sure people don't leave processes around after ExecStartPre=
46
47 * make sure systemd-ask-password-wall does not shutdown systemd-ask-password-console too early
48
49 * readahead: use BTRFS_IOC_DEFRAG_RANGE instead of BTRFS_IOC_DEFRAG ioctl, with START_IO
50
51 * readahead: check whether a btrfs volume includes ssd by checking mount flag "ssd"
52
53 * support sd_notify() style notification when reload begins (RELOADING=1), reload is finished (READY=1)
54
55 * support sd_notify() style notification when shutting down, to make auto-exit bus services work (STOPPING=1)
56
57 * verify that the AF_UNIX sockets of a service in the fs still exist
58   when we start a service in order to avoid confusion when a user
59   assumes starting a service is enough to make it accessible
60
61 * Make it possible to set the keymap independently from the font on
62   the kernel cmdline. Right now setting one resets also the other.
63
64 * move nss-myhostname into systemd
65
66 * and a dbus call to generate target from current state
67
68 * detect LXC with $container=lxc
69
70 * drop /.readahead on bigger upgrades with yum
71
72 * add inode nr check to readahead to suppress preloading changed files
73
74 * add support for /bin/mount -s
75
76 * GC unreferenced jobs (such as .device jobs)
77
78 * add JoinControllers= to system.conf to mount certain cgroup
79   controllers together in order to guarantee atomic creation/addition
80   of cgroups
81
82 * avoid DefaultStandardOutput=syslog to have any effect on StandardInput=socket services
83
84 * cgroup_notify_empty(): recursively check groups up the tree, too
85
86 * when failing to start a service due to ratelimiting, try again later, if restart=always is set
87
88 * write blog stories about:
89   - enabling dbus services
90   - status update
91   - how to make changes to sysctl and sysfs attributes
92   - remote access
93   - cgroup best pratices to avoid stepping on each others toes
94   - how to pass throw-away units to systemd, or dynamically change properties of existing units
95   - how to integrate cgconfig and suchlike with systemd
96
97 * allow port=0 in .socket units
98
99 * move readahead files into /var, look for them with .path units
100
101 * teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
102 * figure out what happened to bluez patch
103
104 * support systemd.mask= on the kernel command line.
105
106 * when key file cannot be found, read it from kbd in cryptsetup
107
108 * reuse mkdtemp namespace dirs in /tmp?
109
110 * recreate systemd's D-Bus private socket file on SIGUSR2
111
112 * Support --test based on current system state
113
114 * investigate whether the gnome pty helper should be moved into systemd, to provide cgroup support.
115
116 * maybe introduce ExecRestartPre=
117
118 * Patch systemd-fsck to use -C and pass console fd to it
119
120 * configurable jitter for timer events
121
122 * timer events with system resume
123
124 * timer events on calendar time
125
126 * Support ProcessNeededForShutdown=true to allow stuff like mdmon to
127   be killed very late after the rootfs is read only? If implement pass
128   this to shutdown binary via command line argument.
129
130 * dot output for --test showing the 'initial transaction'
131
132 * calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
133     http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=99ee5315dac6211e972fa3f23bcc9a0343ff58c4
134
135 * implicitly import "defaults" settings file into all types
136 * exec settings override
137 * writable cgroups dbus properties for live changes
138
139 * port over to LISTEN_FDS/LISTEN_PID:
140    - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
141    - cups     HAVEPATCH
142    - postfix, saslauthd
143    - apache/samba
144    - libvirtd (/var/run/libvirt/libvirt-sock-ro)
145    - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
146    - distccd
147
148 * auditd service files
149
150 * fingerprint.target, wireless.target, gps.target, netdevice.target
151
152 * io priority during initialization
153
154 * if a service fails too often, make the service enter failed mode, and the socket, too.
155
156 * new deps "Triggers" and "TriggeredBy"
157
158 * systemctl list-jobs - show dependencies
159
160 * add systemctl switch to dump transaction without executing it
161
162 * suspend, resume support?
163
164 * drop cap bounding set in readahead and other services
165
166 External:
167
168 * dbus:
169    - get process transport into dbus for systemctl -P/-H
170    - dbus --user
171    - natively watch for dbus-*.service symlinks
172    - allow specification of socket mode/umask when allocating DBusServer
173    - allow disabling of fd passing when connecting a AF_UNIX connection
174
175 * systemd --user
176     PR_SET_CHILD_REAPER patch: https://lkml.org/lkml/2011/7/28/426
177
178 * fix alsa mixer restore to not print error when no config is stored
179
180 * udisks should not use udisks-part-id, instead use blkid. also not probe /dev/loopxxx
181
182 * snd-seq should go, https://bugzilla.redhat.com/show_bug.cgi?id=676095
183
184 * gnome-shell python script/glxinfo/is-accelerated must die
185
186 * make cryptsetup lower --iter-time
187
188 * patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup?
189
190 * patch kernel for cpu feature modalias for autoloading aes/kvm/...
191     http://git.kernel.org/?p=linux/kernel/git/ak/linux-misc-2.6.git;a=shortlog;h=refs/heads/cpuid-match
192   (Rafael J. Wysocki's sysdev rework is on the way. After that CPUs can be exported a proper bus.)
193
194 * kernel: add /proc/sys file exposing CAP_LAST_CAP? sysconf?
195
196 * kernel: add device_type = "fb", "fbcon" to class "graphics"
197
198 Regularly:
199
200 * look for close() vs. close_nointr() vs. close_nointr_nofail()
201
202 * check for strerror(r) instead of strerror(-r)
203
204 * Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
205
206 * %m in printf() instead of strerror();
207
208 * pahole
209
210 * set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!