chiark / gitweb /
Zbigniew Jędrzejewski-Szmek [Sun, 6 Jul 2014 22:35:46 +0000 (18:35 -0400)]
coredumpctl: show a useful error on permission problems
Zbigniew Jędrzejewski-Szmek [Sat, 5 Jul 2014 18:29:56 +0000 (14:29 -0400)]
compress: add benchmark-style test
This is useful to test the behaviour of the compressor for various buffer
sizes.
Time is limited to a minute per compression, since otherwise, when LZ4
takes more than a second which is necessary to reduce the noise, XZ
takes more than 10 minutes.
% build/test-compress-benchmark (without time limit)
XZ: compressed & decompressed
2535300963 bytes in 794.57s (3.04MiB/s), mean compresion 99.95%, skipped 3570 bytes
LZ4: compressed & decompressed
2535303543 bytes in 1.56s (1550.07MiB/s), mean compresion 99.60%, skipped 990 bytes
% build/test-compress-benchmark (with time limit)
XZ: compressed & decompressed
174321481 bytes in 60.02s (2.77MiB/s), mean compresion 99.76%, skipped 3570 bytes
LZ4: compressed & decompressed
2535303543 bytes in 1.63s (1480.83MiB/s), mean compresion 99.60%, skipped 990 bytes
It appears that there's a bug in lzma_end where it leaks 32 bytes.
Zbigniew Jędrzejewski-Szmek [Fri, 4 Jul 2014 02:42:22 +0000 (22:42 -0400)]
journal: add LZ4 as optional compressor
Add liblz4 as an optional dependency when requested with --enable-lz4,
and use it in preference to liblzma for journal blob and coredump
compression. To retain backwards compatibility, XZ is used to
decompress old blobs.
Things will function correctly only with lz4-119.
Based on the benchmarks found on the web, lz4 seems to be the best
choice for "quick" compressors atm.
For pkg-config status, see http://code.google.com/p/lz4/issues/detail?id=135.
Zbigniew Jędrzejewski-Szmek [Fri, 4 Jul 2014 23:53:58 +0000 (19:53 -0400)]
journal/compress: return early in uncompress_startswith
uncompress_startswith would always decode the whole stream, even
if it did not start with the given prefix.
Reallocation policy was also strange.
Zbigniew Jędrzejewski-Szmek [Wed, 2 Jul 2014 02:20:11 +0000 (22:20 -0400)]
vconsole-setup: run setfont before loadkeys
https://bugs.freedesktop.org/show_bug.cgi?id=80685
Ronny Chevalier [Sun, 6 Jul 2014 11:33:38 +0000 (13:33 +0200)]
sysusers: fix uninitialized warning
Tom Gundersen [Sun, 6 Jul 2014 12:12:28 +0000 (14:12 +0200)]
machine: don't return uninitialized variable
Repotred by Ronny Chevalier
Lennart Poettering [Fri, 4 Jul 2014 10:17:12 +0000 (12:17 +0200)]
man: document nspawn's new --volatile switch
Steven Noonan [Fri, 4 Jul 2014 02:42:19 +0000 (19:42 -0700)]
networkd: accept section DHCP in systemd.network files
Steven Noonan [Fri, 4 Jul 2014 02:43:56 +0000 (19:43 -0700)]
networkd: don't clear dhcpv6 lease timers if there's no previous lease
If client->lease is NULL, dhcp6_lease_clear_timers will cause a segmentation
fault.
Lennart Poettering [Fri, 4 Jul 2014 01:22:33 +0000 (03:22 +0200)]
nspawn: add new --volatile switch for booting containers in volatile (ephemeral) mode
Two modes are supported: --volatile=yes mounts only /usr into the
container, and a tmpfs as root directory. --volatile=state mounts the
full OS tree in, but overmounts /var with a tmpfs.
--volatile=yes hence boots with an unpopulated /etc and /var, starting
with pristine configuration and state.
--volatile=state hence boots with an unpopulated /var, only starting
with pristine state.
Lennart Poettering [Fri, 4 Jul 2014 01:13:05 +0000 (03:13 +0200)]
main: change check whether /etc is unpopulated to look for /etc/machine-id
Previously, we checked whether /etc was completely empty. This makes it
difficult though for container managers such as nspawn to install a
small number of files (such as /etc/timezone), and have the system
otherwise populate its own tree.
Hence, change this by looking for /etc/machine-id, which should be a
good sign whether /etc is populated or not.
Lennart Poettering [Fri, 4 Jul 2014 01:10:09 +0000 (03:10 +0200)]
units: conditionalize configfs and debugfs with CAP_SYS_RAWIO
We really don't want these in containers as they provide a too lowlevel
look on the system.
Conditionalize them with CAP_SYS_RAWIO since that's required to access
/proc/kcore, /dev/kmem and similar, which feel similar in style. Also,
npsawn containers lack that capability.
Lennart Poettering [Fri, 4 Jul 2014 01:07:20 +0000 (03:07 +0200)]
units: conditionalize static device node logic on CAP_SYS_MODULES instead of CAP_MKNOD
npsawn containers generally have CAP_MKNOD, since this is required
to make PrviateDevices= work. Thus, it's not useful anymore to
conditionalize the kmod static device node units.
Use CAP_SYS_MODULES instead which is not available for nspawn
containers. However, the static device node logic is only done for being
able to autoload modules with it, and if we can't do that there's no
point in doing it.
Tom Gundersen [Thu, 3 Jul 2014 23:26:19 +0000 (01:26 +0200)]
man: netdev - mention tun and tap
Reported by Moviuro <moviuro@gmail.com>
Tom Gundersen [Thu, 3 Jul 2014 20:47:51 +0000 (22:47 +0200)]
networkd: properly track addresses when first added
When doing a NEWADDR, the reply we get back is the NEWADDR itself, rather
than just an empty ack (unlike how NEWLINK works). For this reason, the
process that did the NEWADDR does not get the broadcast message.
We were only listening for broadcast messages, and hence not tracking the
addresses we added ourselves. This went unnoticed as the kernel will usually
send NEWADDR messages from time to time anyway, so things would mostly work,
but in the worst case we would not notice that a routable address was available
and consider ourselves offline.
Tom Gundersen [Thu, 3 Jul 2014 19:35:03 +0000 (21:35 +0200)]
networkd: link - improve link tracking logging
Lennart Poettering [Thu, 3 Jul 2014 20:52:44 +0000 (22:52 +0200)]
architecture: remove "cris" from uname list
the only correct name appears to be "crisv32"...
http://lists.freedesktop.org/archives/systemd-devel/2014-July/020899.html
Umut Tezduyar Lindskog [Thu, 3 Jul 2014 20:28:29 +0000 (22:28 +0200)]
sd-path: add missing header
Zbigniew Jędrzejewski-Szmek [Tue, 1 Jul 2014 00:10:16 +0000 (20:10 -0400)]
man: add link to Open Group Base Specifications
Lennart Poettering [Thu, 3 Jul 2014 18:48:40 +0000 (20:48 +0200)]
build-sys: bump package and library versions
Lennart Poettering [Thu, 3 Jul 2014 18:46:35 +0000 (20:46 +0200)]
NEWS: prepare for release
Lennart Poettering [Thu, 3 Jul 2014 18:37:10 +0000 (20:37 +0200)]
man: document that systemctl's -H may now be used to connect directly to a container on a remote host
Lennart Poettering [Thu, 3 Jul 2014 18:19:58 +0000 (20:19 +0200)]
machine: properly distuingish created and registered machines
Lennart Poettering [Thu, 3 Jul 2014 17:55:18 +0000 (19:55 +0200)]
update TODO
Lennart Poettering [Thu, 3 Jul 2014 17:54:46 +0000 (19:54 +0200)]
sysusers: add new line type "m" to add users as members to groups
Lennart Poettering [Thu, 3 Jul 2014 15:51:36 +0000 (17:51 +0200)]
update TODO
Lennart Poettering [Thu, 3 Jul 2014 15:50:55 +0000 (17:50 +0200)]
machinectl: show /etc/os-release information of container in status output
Kay Sievers [Thu, 3 Jul 2014 14:28:40 +0000 (16:28 +0200)]
hwdb: update
Lennart Poettering [Thu, 3 Jul 2014 14:27:57 +0000 (16:27 +0200)]
namespace: make sure /tmp, /var/tmp and /dev are writable in namespaces we set up
Lennart Poettering [Thu, 3 Jul 2014 14:27:53 +0000 (16:27 +0200)]
namespace: fix uninitialized memory access
Marcel Holtmann [Thu, 3 Jul 2014 14:13:48 +0000 (16:13 +0200)]
hwdb: Update database of Bluetooth company identifiers
Lennart Poettering [Thu, 3 Jul 2014 13:59:32 +0000 (15:59 +0200)]
architecture: also add tuples for old ARM BE ABI
Zbigniew Jędrzejewski-Szmek [Thu, 3 Jul 2014 13:08:30 +0000 (09:08 -0400)]
architecture: add tuple for old arm abi
I don't have suitable hardware at hand, so this is based
on debian documentation:
https://wiki.debian.org/ArmEabiPort#GCC_preprocessor_macros_for_floating_point
Lennart Poettering [Thu, 3 Jul 2014 13:50:57 +0000 (15:50 +0200)]
test: print library tuple in test
Lennart Poettering [Thu, 3 Jul 2014 13:50:53 +0000 (15:50 +0200)]
shared: add LIB_ARCH tuples for BE ARM archs
Lennart Poettering [Thu, 3 Jul 2014 13:50:31 +0000 (15:50 +0200)]
core: introduce exit_status_set_is_empty() to make things a bit easier to read
Lennart Poettering [Thu, 3 Jul 2014 13:49:54 +0000 (15:49 +0200)]
update TODO
Lennart Poettering [Thu, 3 Jul 2014 13:40:14 +0000 (15:40 +0200)]
shared: rename ARCH_TUPLE to LIB_ARCH_TUPLE
This is really just about library locations, hence clarify that we don't
assume this to be anything but that.
Lennart Poettering [Thu, 3 Jul 2014 13:36:50 +0000 (15:36 +0200)]
exit-status: rename ExitStatusSet's "code" field to "status"
We should follow the naming scheme waitid() uses, not come up with our
own reversed one...
Lennart Poettering [Thu, 3 Jul 2014 13:36:33 +0000 (15:36 +0200)]
man: reference RestartForceExitStatus= from the Restart= description
Zbigniew Jędrzejewski-Szmek [Thu, 3 Jul 2014 13:03:16 +0000 (09:03 -0400)]
architecture: add tuples for arm
Umut Tezduyar Lindskog [Thu, 3 Jul 2014 07:54:45 +0000 (09:54 +0200)]
arch: add crisv32 to uname check
Lennart Poettering [Thu, 3 Jul 2014 10:50:11 +0000 (12:50 +0200)]
nspawn: when running in a service unit, use systemd for restarts
THis way we can remove cgroup priviliges after setup, but get them back
for the next restart, as we need it.
Lennart Poettering [Thu, 3 Jul 2014 10:48:51 +0000 (12:48 +0200)]
machined: don't force terminate registered machines
When a machine is registered in machined with CreateMachine it is OK to
kill the machine when it is terminated, but when an existing unit is
simply registered via RegisterMachine we shouldn't do that, as the unit
is controlled by somebody else.
Lennart Poettering [Thu, 3 Jul 2014 10:47:40 +0000 (12:47 +0200)]
core: introduce new RestartForceExitStatus= service setting
This does the inverse of RestartPreventExitStatus=: it forces a restart
of a service when a certain exit status is returned by a service
process.
Tom Gundersen [Thu, 3 Jul 2014 10:19:14 +0000 (12:19 +0200)]
networkd: tuntap - default to no packet information
Susant says:
> ip tuntap turns this off by default.
Let's follow ip(8) here as that should be the least surprising.
Susant Sahani [Thu, 3 Jul 2014 09:36:59 +0000 (15:06 +0530)]
networkd vxlan: Pass correct type
The group argument is a union. We need to
pass the correct type
Tom Gundersen [Thu, 3 Jul 2014 09:25:07 +0000 (11:25 +0200)]
networkd: tuntap - manpage fixes
Tom Gundersen [Thu, 3 Jul 2014 09:37:05 +0000 (11:37 +0200)]
networkd: tuntap - enable PacketInfo by default
Tom Gundersen [Thu, 3 Jul 2014 08:55:59 +0000 (10:55 +0200)]
networkd: netdev - move tunnel address parsing to networkd-tunnel.c
Tom Gundersen [Thu, 3 Jul 2014 08:52:42 +0000 (10:52 +0200)]
networkd: tunnels - make tunnel address parsing generic
It had a bug in the typing, fix that and also make it save the address family so we
can print proper error messages.
Susant Sahani [Thu, 3 Jul 2014 08:04:11 +0000 (13:34 +0530)]
networkd: Introduce tun/tap device
This patch introduces TUN/TAP device creation support
to networkd.
Example conf to create a tap device:
file: tap.netdev
------------------
[NetDev]
Name=tap-test
Kind=tap
[Tap]
OneQueue=true
MultiQueue=true
PacketInfo=true
User=sus
Group=sus
------------------
Test:
1. output of ip link
tap-test: tap pi one_queue UNKNOWN_FLAGS:900 user 1000 group 1000
id:
uid=1000(sus) gid=10(wheel) groups=10(wheel),1000(sus)
context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
Modifications:
Added:
1. file networkd-tuntap.c
3. netdev kind NETDEV_KIND_TUN and NETDEV_KIND_TAP
2. Tun and Tap Sections and config params to parse
conf and gperf conf parameters
[tomegun: tweak the 'kind' checking for received ifindex]
Tom Gundersen [Thu, 3 Jul 2014 07:57:27 +0000 (09:57 +0200)]
udev: net_setup_link - add a bit more logging
Tom Gundersen [Thu, 3 Jul 2014 07:55:59 +0000 (09:55 +0200)]
networkd: netdev - drop the link callbacks after calling them once
We should never call them again, so make sure they are cleaned up correctly.
Tom Gundersen [Thu, 3 Jul 2014 07:43:31 +0000 (09:43 +0200)]
networkd: netdev - take ref immediately after calling out
Keeping the refcounting next to the sd_bus_call_async() makes it easier to check.
Tom Gundersen [Thu, 3 Jul 2014 07:38:33 +0000 (09:38 +0200)]
networkd: split out vlan and macvlan handling
Lennart Poettering [Wed, 2 Jul 2014 23:19:26 +0000 (01:19 +0200)]
sd-login: use the same code for verfiying machine names everywhere
Lennart Poettering [Wed, 2 Jul 2014 23:19:21 +0000 (01:19 +0200)]
bus: close a bus that failed to connect
Lennart Poettering [Wed, 2 Jul 2014 23:17:26 +0000 (01:17 +0200)]
sd-bus: support connecting to remote hosts, directly into containers
systemctl -H root@foobar:waldi
will now show a list of services running on container "waldi" on host
"foobar", using "root" for authenticating at "foobar".
Since entereing a container requires priviliges, this will only work
correctly for root logins.
Lennart Poettering [Wed, 2 Jul 2014 23:10:01 +0000 (01:10 +0200)]
man: /usr/bin may contain binaries in any compatible arch, not just the primary one
Lennart Poettering [Wed, 2 Jul 2014 23:09:35 +0000 (01:09 +0200)]
man: fix links to systemd-efi-boot-generator(8)
Lennart Poettering [Wed, 2 Jul 2014 15:36:47 +0000 (17:36 +0200)]
sd-bus: when an event loop terminates, explicitly close the bus
This makes sure we actually release the bus and all the messages it
references.
Lennart Poettering [Wed, 2 Jul 2014 15:29:09 +0000 (17:29 +0200)]
bus: drop bus/message GC logic
When a caller drops all references to a bus and its messages while the
messages where still queue, this causes the bus to reference the
messages, and the messages to reference the bus, without anybody else
keeping a reference, which is something we so far considered a leak, and
tried to fix with a GC logic that would recognize cases like this, and
drop the reference.
This GC logic has been broken sofar, and remained unfixed. This commit
removes it altogther, replacing it with nothing. The rationale is that
simply because all refs to the bus have been dropped its queued messages
should *still* be written to the bus, even if the caller doesn't retain
any reference to either bus nor message. This means it was actually
wrong to attempt to clean up the bus in this case.
The proper way how applications should handle this is by explicitly
invoking sd_bus_close(), when they want busses to go away. This is
probably want they want to do anyway to avoid getting spurious
callbacks after they stopped using a bus.
Lennart Poettering [Wed, 2 Jul 2014 15:12:24 +0000 (17:12 +0200)]
bus-proxy: restore operation in non-kdbus mode
bus-proxyd is not only the bridge between legacy dbus clients and kdbus
but is also used to access remote dbus servers via ssh. Let's make sure
it actually works for that.
Michal Sekletar [Fri, 30 May 2014 16:20:16 +0000 (18:20 +0200)]
localed: consider an unset model as a wildcard
Tom Gundersen [Wed, 2 Jul 2014 13:53:41 +0000 (15:53 +0200)]
sd-dhcp6-client: initialize variable
Lennart Poettering [Wed, 2 Jul 2014 13:13:29 +0000 (15:13 +0200)]
udev: net_setup_link builtin should print the reason why something fails
Let's tell users what is going wrong.
Lennart Poettering [Wed, 2 Jul 2014 11:42:25 +0000 (13:42 +0200)]
util: when unescaping strings, don't allow smuggling in of additional NUL bytes
Better safe than sorry.
Lennart Poettering [Wed, 2 Jul 2014 11:41:31 +0000 (13:41 +0200)]
util: generalize is_localhost() and use it everywhere where applicable
Lennart Poettering [Wed, 2 Jul 2014 10:23:36 +0000 (12:23 +0200)]
path: add new "systemd-path" utility for querying paths described in file-hierarchy(7)
This new tool is based on "sd-path", a new (so far unexported) API for
libsystemd, that can hopefully grow into a workable API covering /opt
and more one day.
Thomas Hindoe Paaboel Andersen [Tue, 1 Jul 2014 21:11:47 +0000 (23:11 +0200)]
coredump: vacuum - fix calculation of 10% of fs size for MaxUse
Thomas Hindoe Paaboel Andersen [Tue, 1 Jul 2014 20:56:31 +0000 (22:56 +0200)]
sd-dhcp6-client: check return value
Checking the return values seems to have been forgotten in
ed6ee21953dac9c78383da00bc4514ece6b75ab5
Filipe Brandenburger [Tue, 1 Jul 2014 20:42:59 +0000 (13:42 -0700)]
networkd: fix alignment of gperf source
Tom Gundersen [Tue, 1 Jul 2014 17:45:37 +0000 (19:45 +0200)]
networkd: netdev - add dummy support
Eugene Yakubovich [Tue, 1 Jul 2014 18:58:49 +0000 (11:58 -0700)]
networkd: send hostname to dhcp server
Send hostname (option 12) in DISCOVER and REQUEST messages so the
DHCP server could use it to register with dynamic DNS and such.
To opt-out of this behaviour set SendHostname to false in [DHCP]
section of .network file
[tomegun: rebased, made sure a failing set_hostname is a noop and moved
config from DHCPv4 to DHCP]
Tom Gundersen [Tue, 1 Jul 2014 19:49:28 +0000 (21:49 +0200)]
man: bring systemd.network(5) up-to-date
Based on diff by 'poma'.
Tom Gundersen [Tue, 1 Jul 2014 19:38:08 +0000 (21:38 +0200)]
man: bring systemd.netdev(5) up-to-date
Based on a diff by the mysterious 'poma'.
Thomas Hindoe Paaboel Andersen [Tue, 1 Jul 2014 19:11:35 +0000 (21:11 +0200)]
typo fixes
Tom Gundersen [Tue, 1 Jul 2014 17:41:45 +0000 (19:41 +0200)]
networkd: netdev - take ref when creating netdevs
We were doing this correctly for when the callback takes the Link object, but
must also do it for the cases it takes the NetDev object.
Kay Sievers [Tue, 1 Jul 2014 15:45:44 +0000 (17:45 +0200)]
man: file-hierarchy - emphasize /usr/lib/$arch-id instead of $libdir
Christian Hesse [Tue, 1 Jul 2014 08:22:51 +0000 (10:22 +0200)]
man/sd_journal_get_data: fix variable naming in example
Christian Hesse [Tue, 1 Jul 2014 08:22:50 +0000 (10:22 +0200)]
man/sd_journal_next: fix argument in example
The example does not compile, it fails with:
error: passing argument 3 of ‘sd_journal_get_data’ from incompatible
pointer type
Cast to (const void **) to avoid this.
Lennart Poettering [Tue, 1 Jul 2014 14:37:38 +0000 (16:37 +0200)]
update TODO
Kay Sievers [Tue, 1 Jul 2014 14:00:05 +0000 (16:00 +0200)]
parse_uid: return -ENXIO for -1 uids
Thadeu Lima de Souza Cascardo [Tue, 1 Jul 2014 13:11:50 +0000 (10:11 -0300)]
Use dev_port for the ID of a network device.
For network devices on the same PCI function, dev_id should not be used,
since its purpose is for IPv6 support on interfaces with the same MAC
address.
The new dev_port sysfs attribute should be used instead of dev_id.
Lennart Poettering [Tue, 1 Jul 2014 11:51:26 +0000 (13:51 +0200)]
update TODO
Lennart Poettering [Tue, 1 Jul 2014 11:50:19 +0000 (13:50 +0200)]
man: document directories in $HOME, too, in file-hierarchy(7)
Tom Gundersen [Tue, 1 Jul 2014 11:30:23 +0000 (13:30 +0200)]
networkd: link - don't fail if master netdev already exists
This allows restarts to work gracefully.
Tom Gundersen [Tue, 1 Jul 2014 10:51:08 +0000 (12:51 +0200)]
networkd: tunnel - ensure that enslave callback is always invoked
The Link statemachine relies on this, as it would otherwise wait forever. Hook up the tunnels in the
same way as the other NetDev's.
Tom Gundersen [Tue, 1 Jul 2014 09:27:24 +0000 (11:27 +0200)]
networkd: link - ignore missing MAC address
Currently DHCP/IPv4LL only works on ethernet devices, but no reason not to otherwise
manage them.
Kay Sievers [Tue, 1 Jul 2014 10:25:38 +0000 (12:25 +0200)]
base-filesystem: avoid all searching if the link already exists
Kay Sievers [Tue, 1 Jul 2014 10:12:40 +0000 (12:12 +0200)]
base-filesystem: explicitely check existence of the platform's ABI dynamic loader
Kay Sievers [Tue, 1 Jul 2014 09:42:58 +0000 (11:42 +0200)]
base-filesystem: create /lib64 symlink to libdir /usr directory
Susant Sahani [Mon, 30 Jun 2014 05:05:48 +0000 (10:35 +0530)]
networkd: address_acquire use cleanup macro
use cleanup macro for Address na
[tomegun: dropped unneccessary braces]
Susant Sahani [Mon, 30 Jun 2014 05:05:49 +0000 (10:35 +0530)]
networkd: netdev add one separate line
Tom Gundersen [Tue, 1 Jul 2014 08:28:36 +0000 (10:28 +0200)]
networkd: link - drop assert from _free()
_free() should always succeed, even if object is not fully allocated.
Tom Gundersen [Tue, 1 Jul 2014 08:16:42 +0000 (10:16 +0200)]
sd-dhcp6-client: fix free before use
Tom Gundersen [Tue, 1 Jul 2014 08:09:52 +0000 (10:09 +0200)]
networkd: link - improve refcounting
We failed to take a ref when waiting for udev synchronization. Fix that and also
make unreffing in callbacks simpler throughout by using _cleanup_ macros.
Fixes <https://bugs.freedesktop.org/show_bug.cgi?id=80556>.
Lennart Poettering [Tue, 1 Jul 2014 00:39:08 +0000 (02:39 +0200)]
update TODO