Age | Commit message (Collapse) | Author | |
---|---|---|---|
2012-01-16 | unit: use safe downcasts, remove pointless casts | Michal Schmidt | |
Always use the macros for downcasting. Remove a few obviously pointless casts. | |||
2012-01-16 | unit: use the UNIT() macro consistently | Michal 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-16 | unit: remove union Unit | Michal 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-16 | unit: reduce heap usage for unit objects | Michal 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-06 | unit: properly update references to units which are merged | Lennart 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-12-08 | path: add missing pieces for PathModified | Michal Schmidt | |
PATH_MODIFIED worked internally for PID files detection, but was unusable in units. | |||
2011-12-03 | path: add PathModified (= PathChanged + IN_MODIFY) | Michal Schmidt | |
2011-12-03 | path: refactor PathSpec usage | Michal Schmidt | |
path_*() functions operate on "Path *p" and they do not touch PathSpec internals directly. pathspec_*() functions operate on "PathSpec *s". The PathSpec class will be useful outside of path.c. | |||
2011-12-03 | path: use %m instead of strerror(errno) | Michal Schmidt | |
and strerror(-errno) was just wrong. | |||
2011-09-23 | coverity: fix a couple of bugs found by coverity | Lennart Poettering | |
2011-08-01 | load-fragment: speed up parsing by using a perfect hash table with ↵ | Lennart Poettering | |
configuration settings built by gperf | |||
2011-07-07 | path,unit: support globbing in conditions and path units | Lennart Poettering | |
2011-06-21 | english: s/_per_/_by_/ | Lennart Poettering | |
2011-04-28 | path: simplify recheck logic | Lennart Poettering | |
2011-04-10 | path: optionally, create watched directories in .path units | Lennart Poettering | |
2011-03-04 | path: after installing inotify watches, recheck file again to fix race | Lennart Poettering | |
2011-03-04 | path: don't use IN_ATTRIB on parent dirs when watching a file, since those ↵ | Lennart Poettering | |
cannot be removed without emptying the dir first anyway and we need IN_ATTRIB only to detect the link count dropping to 0 | |||
2011-01-20 | service: when reloading a service fails don't fail the entire service but ↵ | Lennart Poettering | |
just the reload job | |||
2010-12-01 | path: fix watching the root directory | Michal Schmidt | |
If you have a path unit with: DirectoryNotEmpty=/foo and "/foo" does not exist, creating it later escapes the attention of systemd. When adding watches for parent directories, systemd never adds one for the root directory. It attempts to add a watch for an empty string instead, which fails. If the path is "/", we must not trim the slash. | |||
2010-11-16 | path: don't mention too many inotify msgs | Lennart Poettering | |
2010-11-15 | path: properly free PathSpec structs | Lennart Poettering | |
2010-11-15 | unit: introduce ConditionDirectoryNotEmpty= | Lennart Poettering | |
2010-11-15 | path: avoid immediate restarting of units triggered by paths if nothing ↵ | Lennart Poettering | |
actually changed on disk | |||
2010-11-15 | path: always look for IN_ATTRIB since deletion is signalled that way | Lennart Poettering | |
2010-10-29 | units: order units by default before appropriate targets in case they are ↵ | Lennart Poettering | |
pulled indirectly | |||
2010-10-29 | unit: get rid of gnoreDependencyFailure= instead treat ConflictedBy= as ↵ | Lennart Poettering | |
weaker counterpart of Conflicts=, similar to Wants= vs. Requires= | |||
2010-10-13 | inotify: properly handle multiple inotify events per read() | Lennart Poettering | |
2010-10-08 | unit: introduce 'banned' load state for units symlinked to /dev/null | Lennart Poettering | |
2010-08-31 | manager: add missing second part of s/maintenance/failed/ | Matthew Miller | |
2010-08-20 | dbus: follow standardized fdo PropertiesChanged signal spec | Lennart Poettering | |
2010-08-14 | emacs: make sure nobody accidently adds tabs to our sources | Lennart Poettering | |
2010-08-11 | clang: fix numerous little issues found with clang-analyzer | Lennart Poettering | |
2010-08-09 | manager: 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-19 | systemctl: introduce reset-maintenance command | Lennart Poettering | |
2010-07-16 | path,timer: order units after sysinit by default | Lennart Poettering | |
2010-07-13 | socket: when the socket is supposed to stop, don't accept any connections ↵ | Lennart Poettering | |
anymore | |||
2010-07-08 | dbus: make errors reported via D-Bus more useful | Lennart Poettering | |
2010-07-03 | unit: add DefaultDependencies= setting | Lennart 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-03 | unit: simplify things a little by introducing API to add two dependencies in ↵ | Lennart Poettering | |
one step | |||
2010-07-01 | unit: shorten active state enums to make systemctl output nicer | Lennart Poettering | |
2010-07-01 | unit: add new abstracted maintenance state for units | Lennart Poettering | |
2010-06-19 | unit: get rid of various unnecessary casts | Lennart Poettering | |
2010-06-16 | typo: the correct spelling is maintenance not maintainance | Lennart Poettering | |
2010-05-24 | path: add .path unit type for monitoring files | Lennart Poettering | |