summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2012-01-16dbus: more efficient implementation of propertiesMichal Schmidt
The way the various properties[] arrays are initialized is inefficient: - only the .data members change at runtime, yet the whole arrays of properties with all the fields are constructed on the stack one by one by the code. - there's duplication, eg. the properties of "org.freedesktop.systemd1.Unit" are repeated in several unit types. Fix it by moving the information about properties into static const sections. Instead of storing the .data directly in the property, store a constant offset from a run-time base. The small arrays of struct BusBoundProperties bind together the constant information with the right runtime information (the base pointer). On my system the code shrinks by 60 KB, data increases by 10 KB.
2012-01-16unit: use safe downcasts, remove pointless castsMichal Schmidt
Always use the macros for downcasting. Remove a few obviously pointless casts.
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-16logind: downgrade login message to debugMichal Schmidt
The messages make people nervous. https://bugzilla.redhat.com/show_bug.cgi?id=727315
2012-01-14journal: drop privileges when storing coredumpLennart Poettering
2012-01-14journal: when show blob data show lengthLennart Poettering
2012-01-14util: support formatting eta and peta bytes with format_bytes()Lennart Poettering
2012-01-14util: introduce FORMAT_BYTES_MAXLennart Poettering
2012-01-14journal: collect coredump up to 24M in sizeLennart Poettering
2012-01-14journal: handle empty syslog identifier properlyLennart Poettering
2012-01-14journal: fix bad memory accessLennart Poettering
2012-01-14journal: if the data to be sent is larger than the maximum datagram size ↵Lennart Poettering
resort to passing a temporary fd over native protocol
2012-01-14journal: hook up coredumping with journalLennart Poettering
2012-01-14journal: add new system-cat tool as kind of a more powerfull BSD loggerLennart Poettering
2012-01-14util: split out tty_is_vc_resolve() from default_term_for_tty()Lennart Poettering
2012-01-14util: rework ANSI escape code macrosLennart Poettering
2012-01-14mount: fix quotaMichal Schmidt
quotacheck.service and quotaon.service were not pulled in for fstab mounts. Fix it by not clearing the default_dependencies flag. The root filesystem may have quotas too, so don't check for "/" there. No need to have duplicate code for adding dependencies on umount.target. https://bugzilla.redhat.com/show_bug.cgi?id=773431
2012-01-13pam: fix buildLennart Poettering
2012-01-13pam: work correctly if a seat is specified but not vtnrLennart Poettering
2012-01-13journal: add output mode that just prints simple messages without any ↵Lennart Poettering
decorations
2012-01-13api: add C++ guards to all headersLennart Poettering
2012-01-13sd-login: teach sd_pid_get_unit() proper handling of instantiated servicesLennart Poettering
2012-01-12journal: if the syslog forwarder socket is full, then don't blockLennart Poettering
2012-01-12core: switch all log targets to go directly to the journal, instead via syslogLennart Poettering
2012-01-12log: make internal log api log directly to the journalLennart Poettering
2012-01-11journal: add SELinux context to all logged messagesLennart Poettering
2012-01-11journal: fix more 32/64 bit issuesLennart Poettering
2012-01-11tmpfiles: fix parsing of /proc/net/unix on 32Bit machinesLennart Poettering
Tracked down by Michael Meeks
2012-01-11logs-show: fix missing newline in short outputMichal Schmidt
Ellipsized messages were printed without a newline.
2012-01-11journald: don't assume size_t and uint64_t are the sameLennart Poettering
2012-01-11journald: set group ownership of journal files to 'adm' by defaultLennart Poettering
2012-01-11journal: make requirement for ACLs optionalLennart Poettering
2012-01-11journalctl: fix --help textLennart Poettering
2012-01-11journal: don't realign window twiceLennart Poettering
2012-01-11sd-journal: implement a number of non-implemented calls from the API for nowLennart Poettering
2012-01-11systemd: reconnect to syslog as soon as the journal is fully upLennart Poettering
2012-01-11journalctl: always show monotonic timestamp even if it's from an old bootLennart Poettering
2012-01-11unit: implement new PropagateReloadTo=/PropagateReloadFrom= operationsLennart Poettering
2012-01-11shutdown: add link to root storage daemon textLennart Poettering
2012-01-11service: brutally slaughter processes that are running in the cgroup when we ↵Lennart Poettering
enter START_PRE and START
2012-01-10shutdown: exclude processes with argv[0][0] from killingLennart Poettering
2012-01-07journalctl: display source timestamp, not journald timestamp, if knownLennart Poettering
2012-01-07journalctl: add new short-monotonic output modeLennart Poettering
2012-01-07journald: add kmsg sourceLennart Poettering
2012-01-07journald: remove inner loop debug messageLennart Poettering
2012-01-07fix compiler warningKay Sievers
2012-01-07sd-id128: let's make our API a bit smaller, since sd_id128_make_v4_uuid() is ↵Lennart Poettering
dispensable
2012-01-07journalctl: rename --new-id to --new-id128 in order not to introduce yet ↵Lennart Poettering
another new name