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