chiark / gitweb /
seat: add another 'Plugable' device id
[elogind.git] / TODO
1 * udev-kernel.socket + udev.control.socket seems not
2   to work, udevd is started but no fd is passed
3
4 F15:
5
6 * swap units that are activated by one name but shown in the kernel under another are semi-broken
7
8 F15 External:
9
10 * NFS, networkmanager ordering issue (PENDING)
11
12 * NM should pull in network.target (PENDING)
13   https://bugzilla.redhat.com/show_bug.cgi?id=692008
14
15 * bluetooth should be possible to disable (PENDING)
16
17 * make anaconda write timeout=0 for encrypted devices
18
19 * fix broken Sockets=syslog-ng.socket packaging
20
21 Features:
22
23 * fix CUPS .path unit for globbing
24
25 * move PAM code into its own binary
26
27 * logind: ensure ACLs are updated on login and logout
28
29 * warn if the user stops a service but not its associated socket
30
31 * ensure we always set the facility when logging to kmsg
32
33 * service: pid file reading after reload doesn't work, since we don't reset the pid variable
34
35 * logind: spawn user@..service on login
36
37 * logind: non-local X11 server handling
38
39 * logind: use sysfs path in device hash table instead of sysname, as soon as fb driver is fixed
40
41 * possibly apply systemd-sysctl per network device subtrees on hotplug
42
43 * implement Register= switch in .socket units to enable registration
44   in Avahi, RPC and other socket registration services.
45
46 * make sure people don't leave processes around after ExecStartPre=
47
48 * make sure systemd-ask-password-wall does not shutdown systemd-ask-password-console too early
49
50 * kernel: add /proc/sys file exposing CAP_LAST_CAP?
51
52 * kernel: add device_type = "fb", "fbcon" to class "graphics"
53
54 * understand https://bugzilla.redhat.com/show_bug.cgi?id=672194
55
56 * readahead: use BTRFS_IOC_DEFRAG_RANGE instead of BTRFS_IOC_DEFRAG ioctl, with START_IO
57
58 * readahead: check whether a btrfs volume includes ssd by checking mount flag "ssd"
59
60 * support sd_notify() style notification when reload is finished (RELOADED=1)
61
62 * support sf_notify() style notification when shutting down, to make auto-exit bus services work
63
64 * verify that the AF_UNIX sockets of a service in the fs still exist
65   when we start a service in order to avoid confusion when a user
66   assumes starting a service is enough to make it accessible
67
68 * Make it possible to set the keymap independently from the font on
69   the kernel cmdline. Right now setting one resets also the other.
70
71 * move nss-myhostname into systemd
72
73 * figure out a standard place to configure timezone name, inform myllynen@redhat.com
74
75 * add dbus call to convert snapshot into target, and a dbus call to generate target from current state
76
77 * detect LXC with $container=lxc
78
79 * drop /.readahead on bigger upgrades with yum
80
81 * add inode stat() check to readahead to suppress preloading changed files
82
83 * allow list of paths in config_parse_condition_path()
84
85 * show enablement status in systemctl status
86
87 * add support for /bin/mount -s
88
89 * GC unreferenced jobs (such as .device jobs)
90
91 * add JoinControllers= to system.conf to mount certain cgroup
92   controllers together in order to guarantee atomic creation/addition
93   of cgroups
94
95 * avoid DefaultStandardOutput=syslog to have any effect on StandardInput=socket services
96
97 * cgroup_notify_empty(): recursively check groups up the tree, too
98
99 * fix alsa mixer restore to not print error when no config is stored
100
101 * when failing to start a service due to ratelimiting, try again later, if restart=always is set
102
103 * write blog stories about:
104   - enabling dbus services
105   - status update
106   - how to make changes to sysctl and sysfs attributes
107   - remote access
108
109 * allow port=0 in .socket units
110
111 * rename systemd-logger to systemd-stdio-syslog-bridge
112
113 * take BSD file lock on tty devices when using them?
114
115 * avoid any flag files, or readahead files in /, we need to support r/o /
116   or / on tmpfs like Android setups.
117
118 * move readahead files into /var, look for them with .path units
119
120 * teach dbus to activate all services it finds in /etc/systemd/services/org-*.service
121
122 * get process transport into dbus for systemctl -P/-H
123
124 * document default dependencies
125
126 * support systemd.whitelist=/systemd.blacklist= on the kernel command
127   line.
128
129 * Find a way to replace /var/run, /var/lock directories with
130   symlinks during an RPM package upgrade (filesystem.rpm or systemd.rpm).
131   (lua code to create symlinks right away for new installations is in filesytem.rpm now)
132   We soon want to get rid of var-run.mount var-lock.mount units:
133     if mountpoint /run ; then
134           umount /var/run || :
135     else
136           mount --move /var/run /run || mount --bind /var/run /run
137     fi
138     mv /var/run /var/.run.save
139     ln -s /run /var/run
140     echo "R /var/.run.save" > /etc/tmpfiles.d/remove-run-save.conf
141
142 * when key file cannot be found, read it from kbd in cryptsetup
143
144 * add switch to systemctl to show enabled but not running services. Or
145   another switch that shows service that have been running since
146   booting but aren't running anymore.
147
148 * reuse mkdtemp namespace dirs in /tmp?
149
150 * recreate systemd's D-Bus private socket file on SIGUSR2
151
152 * be more specific what failed:
153     ...
154     Unmounting file systems.
155     Not all file systems unmounted, 1 left.
156     Disabling swaps.
157     Detaching loop devices.
158     Detaching DM devices.
159     Cannot finalize remaining file systems and devices, trying to kill remaining processes.
160     Unmounting file systems.
161     Not all file systems unmounted, 1 left.
162     Cannot finalize remaining file systems and devices, giving up.
163     ...
164
165 * check for compiled-in, but not active selinux, and don't print any warnings
166   about policy loading. Probably check for available selinux in /proc/filesystems,
167   and check for active selinux with getcon_raw() == "kernel"
168
169 * Support --test based on current system state
170
171 * show failure error string in "systemctl status"
172
173 * make sure timeouts are applied to Type=oneshot services.
174
175 * investigate whether the gnome pty helper should be moved into systemd, to provide cgroup support.
176
177 * need a way to apply mount options of api vfs from systemd unit files
178   (or some other modern source?) instead of fstab?
179
180 * maybe introduce ExecRestartPre=
181
182 * figure out what happened to bluez patch
183
184 * Patch systemd-fsck to use -C and pass console fd to it
185
186 * configurable jitter for timer events
187
188 * Support ProcessNeededForShutdown=true to allow stuff like mdmon to
189   be killed very late after the rootfs is read only? If implement pass
190   this to shutdown binary via command line argument.
191
192 * dot output for --test showing the 'initial transaction'
193
194 * calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
195     http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=99ee5315dac6211e972fa3f23bcc9a0343ff58c4
196
197 * systemd --user
198   - get PR_SET_ANCHOR merged: http://lkml.org/lkml/2010/2/2/165
199
200 * implicitly import "defaults" settings file into all types
201
202 * port over to LISTEN_FDS/LISTEN_PID:
203    - uuidd    HAVEPATCH
204    - rpcbind (/var/run/rpcbind.sock!) HAVEPATCH
205    - cups     HAVEPATCH
206    - postfix, saslauthd
207    - apache/samba
208    - libvirtd (/var/run/libvirt/libvirt-sock-ro)
209    - bluetoothd (/var/run/sdp! @/org/bluez/audio!)
210    - distccd
211
212 * fingerprint.target, wireless.target, gps.target, netdevice.target
213
214 * set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
215
216 * io priority during initialization
217
218 * if a service fails too often, make the service enter failed mode, and the socket, too.
219
220 * systemctl list-jobs - show dependencies
221
222 * auditd service files
223
224 * add systemctl switch to dump transaction without executing it
225
226 * suspend, resume support?
227
228 * readahead: btrfs/LVM SSD detection
229
230 * add separate man page for [Install] settings
231
232 * allow runtime changing of log level and target
233
234 * drop cap bounding set in readahead and other services
235
236 External:
237
238 * udisks should not use udisks-part-id, instead use blkid. also not probe /dev/loopxxx
239
240 * snd-seq should go, https://bugzilla.redhat.com/show_bug.cgi?id=676095
241
242 * gnome-shell python script/glxinfo/is-accelerated must die
243
244 * make cryptsetup lower --iter-time
245
246 * patch kernel for xattr support in /dev, /proc/, /sys and /sys/fs/cgroup?
247
248 * patch kernel for cpu feature modalias for autoloading aes/kvm/...
249     http://git.kernel.org/?p=linux/kernel/git/ak/linux-misc-2.6.git;a=shortlog;h=refs/heads/cpuid-match
250   (Rafael J. Wysocki's sysdev rework is on the way. After that CPUs can be exported a proper bus.)
251
252 * procps, psmisc, sysvinit-tools, hostname → util-linux-ng
253
254 https://bugzilla.redhat.com/show_bug.cgi?id=614245 -- plymouth
255 https://bugzilla.redhat.com/show_bug.cgi?id=612789 -- umount /cgroup on halt
256 https://bugzilla.redhat.com/show_bug.cgi?id=612728 -- /etc/rc.d/init.d/functions
257 https://bugzilla.redhat.com/show_bug.cgi?id=612712 -- pam_systemd
258 https://bugs.freedesktop.org/show_bug.cgi?id=29193 -- accountsservice
259 https://bugs.freedesktop.org/show_bug.cgi?id=29194 -- ConsoleKit
260 https://bugs.freedesktop.org/show_bug.cgi?id=29205 -- udisks
261 http://article.gmane.org/gmane.linux.bluez.kernel/6479 -- bluez
262 http://www.spinics.net/lists/linux-nfs/msg14371.html -- rpcbind
263 https://bugzilla.redhat.com/show_bug.cgi?id=617328 -- ntp
264 https://bugzilla.redhat.com/show_bug.cgi?id=617320 -- at
265 https://bugzilla.redhat.com/show_bug.cgi?id=617326 -- fprintd
266 https://bugzilla.redhat.com/show_bug.cgi?id=617333 -- yum
267 https://bugzilla.redhat.com/show_bug.cgi?id=617317 -- acpid
268 https://bugzilla.redhat.com/show_bug.cgi?id=617327 -- gpm
269 https://bugzilla.redhat.com/show_bug.cgi?id=617330 -- pcsc-lite
270 https://bugzilla.redhat.com/show_bug.cgi?id=617321 -- audit
271 https://bugzilla.redhat.com/show_bug.cgi?id=617316 -- abrt
272
273 Regularly:
274
275 * look for close() vs. close_nointr() vs. close_nointr_nofail()
276
277 * check for strerror(r) instead of strerror(-r)
278
279 * Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
280
281 * %m in printf() instead of strerror();
282
283 * pahole
284
285 * CFLAGS="-Wl,--gc-sections -Wl,--print-gc-sections -ffunction-sections -fdata-sections"