Systemd/fixme
Lennart Poettering 8fe914ec81 device: do not merge devices
Don't try to merge devices that have been created via dependencies when
they appear in the system and can be recognized as the same.  Instead,
simply continue to maintain them independently of each other, however
with the same state cycle. Why? Because otherwise we'd have a hard time
to seperate the dependencies after the devices are unplugged again and
we hence cannot be sure anymore that next time the device is plugged in
it will carry the same names.

Example: if one depndency refers to dev-sda.device and another one to
dev-by-id-xxxyyy.device we only learn at time of plug in of the device
that it is actually the same device that was ment. In the moment the
device is unplugged again we won't know anymore their relation to each
other and the next time the harddisk is plugged it might even appear as
dev-by-id-xxxyyy.device and dev-sdb.service. To ensure the dependencies
continue to have the meaning they were intended to have let's hence keep
the .device objects seperate all the time, even when they are plugged
in.

This patch also introduces a new Following= property which points from
the various .device units of a specific device to the main .device unit
for it. This can be used by the client side to figure out the relation
of the .device units to each other and even filter units from display.
2010-07-20 20:33:24 +02:00

93 lines
2.2 KiB
Plaintext

* calendar time support in timer, iCalendar semantics for the timer stuff (RFC2445)
* implicitly import "defaults" settings file into all types
* add #ifdefs for non-sysv builds
* reinvestigate random seed, hwclock
* "disabled" load state?
* ability to kill services? i.e. in contrast to stopping them, go directly
into killing mode?
* port over to LISTEN_FDS/LISTEN_PID:
- uuidd DONE
- nscd DONE
- dbus DONE
- rsyslog DONE
- rpcbind (/var/run/rpcbind.sock!) DONE
- cups DONE
- avahi-daemon (/var/run/avahi-daemon/socket) DONE
- ssh CLASSIC
- postfix, saslauthd
- apache/samba
- libvirtd (/var/run/libvirt/libvirt-sock-ro)
- bluetoothd (/var/run/sdp! @/org/bluez/audio!)
- distccd
* write utmp record a la upstart for processes
* follow property change dbus spec
* selinux
* systemctl status $PID, systemctl stop $PID!
* place /etc/inittab with explaining blurb.
* In command lines, support both "$FOO" and $FOO
* /etc must always take precedence even if we follow symlinks!
* fix merging of device units
* color aus bei stdout auf !tty
getty before prefdm
* /lib/init/rw
* vielleicht implizit immer auf syslog dependen?
* debian deadlock when partition auf noauto is.
* fingerprint.target, wireless.target, gps.target
* set_put(), hashmap_put() return values checken. i.e. == 0 macht kein free()!
* crash on missing hostname
* fix merging in .swap units
* pahole
* io priority
* network.target darf nm nicht unbedingt starten
External:
* default.target must be %ghosted...
* in %post create all symlinks manually and use inittab data
* default logic for serial getty, ck logging, ssh readahead
* patch /etc/init.d/functions with:
if [ $PPID -ne 1 && mountpoint /cgroup/systemd ] ; then echo "You suck!" ; fi
https://bugzilla.redhat.com/show_bug.cgi?id=614245
https://bugzilla.redhat.com/show_bug.cgi?id=612789
https://bugzilla.redhat.com/show_bug.cgi?id=612728
https://bugzilla.redhat.com/show_bug.cgi?id=612712
Regularly:
* look for close() vs. close_nointr() vs. close_nointr_nofail()
* check for strerror(r) instead of strerror(-r)
* Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
* %m in printf() instead of strerror();