Age | Commit message (Collapse) | Author |
|
The UNIT() macro upcasts from specific unit types to the base Unit.
Use it everywhere, rather than accessing the 'meta' member directly.
|
|
Now that objects of all unit types are allocated the exact amount of
memory they need, the Unit union has lost its purpose. Remove it.
"Unit" is a more natural name for the base unit class than "Meta", so
rename Meta to Unit.
Access to members of the base class gets simplified.
|
|
The storage of the unit objects on the heap is currently not very
efficient. For every unit object we allocate a chunk of memory as large
as the biggest unit type, although there are significant differences in
the units' real requirements.
pahole shows the following sizes of structs:
488 Target
496 Snapshot
512 Device
528 Path
560 Timer
576 Automount
1080 Socket
1160 Swap
1168 Service
1280 Mount
Usually there aren't many targets or snapshots in the system, but Device
is one of the most common unit types and for every one we waste
1280 - 512 = 768 bytes.
Fix it by allocating only the right amount for the given unit type.
On my machine (x86_64, with 39 LVM volumes) this decreases systemd's
USS (unique set size) by more than 300 KB.
|
|
configuration settings built by gperf
|
|
|
|
accessing /proc/cmdline
|
|
are off for either target and unit
|
|
|
|
https://bugzilla.redhat.com/show_bug.cgi?id=676885
|
|
just the reload job
|
|
weaker counterpart of Conflicts=, similar to Wants= vs. Requires=
|
|
fully loaded
|
|
|
|
into the final transaction and may be used for synchronization
|
|
It is essential that the gettys are proper dependencies from
getty.target so that they aren't killed and immediately restarted on
runlevel changes. Hence rework the logic to implicitly add console
gettys to getty.target as dependencies.
This also adds an automatic hvc console for virtualizers.
https://bugzilla.redhat.com/show_bug.cgi?id=501720
|
|
|
|
|
|
don't need it anymore and it is crutfy
|
|
the unit they require don't contradict that automatically
|
|
In order to simplify writing of unit files introduce default
dependencies that are added to all units unless explictly disabled in a
unit. This option can be switched off for select units that are involved
in early boot-up ot late system shutdown,
This should simplify service files for most normal daemons, but breaks
existing service files for software involved in early boot (notably
udev), which need to be updated for a DefaultDependencies=no setting)
|
|
|
|
|
|
|