summaryrefslogtreecommitdiff
path: root/src/timer.c
AgeCommit message (Collapse)Author
2012-01-16unit: use the UNIT() macro consistentlyMichal Schmidt
The UNIT() macro upcasts from specific unit types to the base Unit. Use it everywhere, rather than accessing the 'meta' member directly.
2012-01-16unit: remove union UnitMichal Schmidt
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.
2012-01-16unit: reduce heap usage for unit objectsMichal Schmidt
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.
2012-01-07fix compiler warningKay Sievers
2012-01-06unit: properly update references to units which are mergedLennart Poettering
When we merge units that some kind of object points to, those pointers might become invalidated, and needs to be updated. Introduce a UnitRef struct which links up all the unit references, to ensure corrected references. At the same time, drop configured_sockets in the Service object, and replace it by proper UNIT_TRIGGERS resp. UNIT_TRIGGERED_BY dependencies, which allow us to simplify a lot of code.
2011-08-01load-fragment: speed up parsing by using a perfect hash table with ↵Lennart Poettering
configuration settings built by gperf
2011-01-20service: when reloading a service fails don't fail the entire service but ↵Lennart Poettering
just the reload job
2010-10-29units: order units by default before appropriate targets in case they are ↵Lennart Poettering
pulled indirectly
2010-10-29unit: get rid of gnoreDependencyFailure= instead treat ConflictedBy= as ↵Lennart Poettering
weaker counterpart of Conflicts=, similar to Wants= vs. Requires=
2010-10-28timer: when deserializing timer state stay elapsed when we are elapsedLennart Poettering
2010-10-27unit: serialize active timestampsLennart Poettering
2010-10-05timer: Add missing break in switchMatthias Schiffer
2010-08-31manager: add missing second part of s/maintenance/failed/Matthew Miller
2010-08-20dbus: follow standardized fdo PropertiesChanged signal specLennart Poettering
2010-08-14emacs: make sure nobody accidently adds tabs to our sourcesLennart Poettering
2010-08-11clang: fix numerous little issues found with clang-analyzerLennart Poettering
2010-08-09manager: when two pending jobs conflict, keep the one that "conflicts", ↵Lennart Poettering
remove the one that is "conflicted" This gives the writer of units control which unit is kept and which is stopped when two units conflict.
2010-07-19systemctl: introduce reset-maintenance commandLennart Poettering
2010-07-16path,timer: order units after sysinit by defaultLennart Poettering
2010-07-13socket: when the socket is supposed to stop, don't accept any connections ↵Lennart Poettering
anymore
2010-07-08dbus: make errors reported via D-Bus more usefulLennart Poettering
2010-07-04uniformly suffix time span properties with their unitLennart Poettering
2010-07-03unit: add DefaultDependencies= settingLennart Poettering
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)
2010-07-01unit: shorten active state enums to make systemctl output nicerLennart Poettering
2010-07-01unit: add new abstracted maintenance state for unitsLennart Poettering
2010-06-19unit: get rid of various unnecessary castsLennart Poettering
2010-06-16typo: the correct spelling is maintenance not maintainanceLennart Poettering
2010-05-24path: add .path unit type for monitoring filesLennart Poettering
2010-05-24timer: fully implement timer unitsLennart Poettering
2010-05-16build-sys: move source files to subdirectoryLennart Poettering