Hans de Goede [Thu, 20 Dec 2018 15:08:46 +0000 (16:08 +0100)]
hwdb: Add accelerometer orientation quirk for the PoV TAB-P1006W-232-3G
Add accelerometer orientation quirk for the Point of View TAB-P1006W-232-3G
tablet.
Lennart Poettering [Thu, 20 Dec 2018 13:53:23 +0000 (14:53 +0100)]
Merge pull request #11223 from poettering/read-line-0x00-0xff
fileio: fix read_one_line() when reading bytes > 0x7F
Jeremy Su [Thu, 20 Dec 2018 12:58:02 +0000 (20:58 +0800)]
hwdb: Add support for HP ProBook 645 wifi and slash key (#11207)
hwdb: Add support for HP ProBook 645 wifi and slash key
Lennart Poettering [Thu, 20 Dec 2018 12:57:16 +0000 (13:57 +0100)]
Merge pull request #11222 from keszybz/tmpfiles-crash
tmpfiles: fix crash with NULL in arg_root and other fixes and tests
Lennart Poettering [Thu, 20 Dec 2018 10:21:36 +0000 (11:21 +0100)]
test-fileio: add explicit check for safe_fgetc() with 0xFF
Lennart Poettering [Thu, 20 Dec 2018 09:21:16 +0000 (10:21 +0100)]
fileio: fix read_one_line() when reading bytes > 0x7F
Fixes: #11218
Zbigniew Jędrzejewski-Szmek [Thu, 20 Dec 2018 10:37:41 +0000 (11:37 +0100)]
Merge pull request #10912 from poettering/gpt-root-rw
make sure to propagate GPT root partition r/w flag into mount r/w flag
Zbigniew Jędrzejewski-Szmek [Wed, 19 Dec 2018 22:05:48 +0000 (23:05 +0100)]
tmpfiles: fix crash with NULL in arg_root and other fixes and tests
The function to replacement paths into the configuration file list was borked.
Apart from the crash with empty root prefix, it would incorrectly handle the
case where root *was* set, and the replacement file was supposed to override
an existing file.
prefix_root is used instead of path_join because prefix_root removes duplicate
slashes (when --root=dir/ is used).
A test is added.
Fixes #11124.
Zbigniew Jędrzejewski-Szmek [Thu, 20 Dec 2018 08:29:52 +0000 (09:29 +0100)]
Merge pull request #11215 from poettering/gpt-auto-no-udev
gpt-auto-generator: don't wait for udev
Lennart Poettering [Wed, 19 Dec 2018 17:16:41 +0000 (18:16 +0100)]
dissect: add some assert()s
Lennart Poettering [Wed, 19 Dec 2018 16:17:35 +0000 (17:17 +0100)]
gpt-auto-generator: don't wait for udev
Generators run in a context where waiting for udev is not an option,
simply because it's not running there yet. Hence, let's not wait for it
in this case.
This is generally OK to do as we are operating on the root disk only
here, which should have been probed already by the time we come this
far.
An alternative fix might be to remove the udev dependency from image
dissection again in the long run (and thus replace reliance on
/dev/block/x:y somehow with something else).
Fixes: #11205
Chris Down [Wed, 19 Dec 2018 12:11:15 +0000 (12:11 +0000)]
Merge pull request #11212 from keszybz/mount-storm-revert
Revert the patches for mount-storm prevention for now
Zbigniew Jędrzejewski-Szmek [Wed, 19 Dec 2018 10:32:26 +0000 (11:32 +0100)]
Revert "core/mount: minimize impact on mount storm."
This reverts commit
89f9752ea08f516b5d77f8e577bb772073c70c01.
This patch causes various problems during boot, where a "mount storm" occurs
naturally. Current approach is flakey, and it seems very risky to push a
feature like this which impacts boot right before a release. So let's revert
for now, and consider a more robust solution after later.
Fixes #11209.
> https://github.com/systemd/systemd/pull/11196#issuecomment-
448523186:
"Reverting
89f9752ea08f516b5d77f8e577bb772073c70c01 and
fcfb1f775ed0e9d282607bb118ba788b98952855 fixes this test."
Zbigniew Jędrzejewski-Szmek [Wed, 19 Dec 2018 10:32:17 +0000 (11:32 +0100)]
Revert "mount: disable mount-storm protection while mount unit is starting."
This reverts commit
fcfb1f775ed0e9d282607bb118ba788b98952855.
NeilBrown [Sun, 16 Dec 2018 22:32:58 +0000 (09:32 +1100)]
mount: disable mount-storm protection while mount unit is starting.
The starting of mount units requires that changes to
/proc/self/mountinfo be processed before the SIGCHILD from the
completion of /sbin/mount is processed, as described by the comment
/* Note that due to the io event priority logic, we can be sure the new mountinfo is loaded
* before we process the SIGCHLD for the mount command. */
The recently-added mount-storm protection can defeat this as it
will sometimes deliberately delay processing of /proc/self/mountinfo.
So we need to disable mount-storm protection when a mount unit is starting.
We do this by keeping a counter of the number of pending
mounts, and disabling the protection when this is non-zero.
Thanks to @asavah for finding and reporting this problem.
Lennart Poettering [Tue, 18 Dec 2018 19:50:16 +0000 (20:50 +0100)]
Merge pull request #11201 from keszybz/more-news
Some git history rewriting and more news
Lennart Poettering [Tue, 18 Dec 2018 19:49:19 +0000 (20:49 +0100)]
Merge pull request #11182 from poettering/fileio-more-paranoia
More safety checks for fileio.c
Chris Down [Tue, 18 Dec 2018 16:08:27 +0000 (16:08 +0000)]
Merge pull request #11203 from keszybz/json-no-slash-escaping
json: do not unescape slashes
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 14:16:26 +0000 (15:16 +0100)]
json: do not unescape slashes
Apparently this originated in PHP, so the json output could be directly
embedded in HTML script tags.
See https://stackoverflow.com/questions/1580647/json-why-are-forward-slashes-escaped.
Since the output of our tools is not intended directly for web page generation,
let's not do this unescaping. If needed, the consumer can always do escaping as
appropriate for the target format.
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 12:27:59 +0000 (13:27 +0100)]
test-fileio: test safe_fgetc directly
Non-ascii chars are used so that we get both "positive" and "negative"
characters (on the arches where char is signed).
Lennart Poettering [Mon, 17 Dec 2018 10:53:21 +0000 (11:53 +0100)]
update TODO
Lennart Poettering [Mon, 17 Dec 2018 11:17:36 +0000 (12:17 +0100)]
process-util: rework getenv_for_pid() to use read_nul_string()
Lennart Poettering [Mon, 17 Dec 2018 10:52:51 +0000 (11:52 +0100)]
test: add test case for read_nul_string()
Lennart Poettering [Mon, 17 Dec 2018 10:52:05 +0000 (11:52 +0100)]
fileio: let's minimize 'count' inc/dec calls
instead of increasing it and immediately after decreasing it again,
let's just increase it a bit later.
Lennart Poettering [Mon, 17 Dec 2018 10:50:33 +0000 (11:50 +0100)]
fileio: replace read_nul_string() by read_line() with a special flag
read_line() is a lot more careful and optimized than read_nul_string()
but does mostly the same thing. let's replace the latter by the former,
just with a special flag that toggles between the slightly different EOL
rules if both.
Lennart Poettering [Mon, 17 Dec 2018 10:23:15 +0000 (11:23 +0100)]
process-util: make get_process_environ() safer
Let's add a size limit, and let's use safe_fgetc().
Lennart Poettering [Mon, 17 Dec 2018 10:22:38 +0000 (11:22 +0100)]
tree-wide: port some code over to safe_fgetc()
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 13:31:24 +0000 (14:31 +0100)]
NEWS: add a note about symlink following in .wants and .requires
This ain't so easy to express without using too much technical language...
https://github.com/systemd/systemd/pull/10094#issuecomment-
427407570
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 13:14:44 +0000 (14:14 +0100)]
NEWS: add note about NNP=yes
Lennart Poettering [Mon, 17 Dec 2018 10:21:12 +0000 (11:21 +0100)]
fileio: add new safe_fgetc() helper call
We have very similar code whenever we call fgetc() in place, let's
replae it by a common implementation.
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 13:47:12 +0000 (14:47 +0100)]
Merge pull request #10221 from lucaswerkmeister/bash-completion
Merged locally to resolve a conflict. The redirection of error is required to
suppress "# Not showing unlisted system calls, ...".
Lennart Poettering [Fri, 23 Nov 2018 22:06:22 +0000 (23:06 +0100)]
update TODO
Lennart Poettering [Fri, 23 Nov 2018 21:16:57 +0000 (22:16 +0100)]
gpt-auto: propagate gpt partition ro/rw flag into root mount
This ensures that the read/write state of the root mount matches the
read/write flag in the GPT partition table entry.
This is only used as fallback in case no ro/rw flag is specified on the
kernel cmdline, and there's no entry for the root partition in
/etc/fstab.
This is missing functionality of the GPT auto logic, as without this the
root partition was always mounted read-only — when booting with zero
configuration in /etc/fstab and /proc/cmdline —, as we defaulted to
read-only behaviour for all mounts. Moreover we honoured the r/o flag in
the partition table for all other partition types, except for the root
partition.
Lennart Poettering [Fri, 23 Nov 2018 18:49:13 +0000 (19:49 +0100)]
gpt-auto: make arg_root_rw a tri-state
No change in behaviour, but let's track whether ro or rw are specified
on the kernel cmdline at all.
Lennart Poettering [Fri, 23 Nov 2018 18:47:41 +0000 (19:47 +0100)]
remount-fs: optionally remount / writable, if we are told through an env var
Lennart Poettering [Fri, 23 Nov 2018 18:41:11 +0000 (19:41 +0100)]
remount-fs: split code for tracking PIDs in hashmap
Just some refactoring, no change in behaviour.
Lennart Poettering [Fri, 23 Nov 2018 18:40:12 +0000 (19:40 +0100)]
remount-fs: use PATH_IN_SET() at one more place
Lennart Poettering [Fri, 23 Nov 2018 17:51:30 +0000 (18:51 +0100)]
gpt-auto: compare kernel cmdline args with proc_cmdline_key_streq()
Lennart Poettering [Tue, 18 Dec 2018 13:35:00 +0000 (14:35 +0100)]
Merge pull request #11197 from keszybz/various-fixups
Various fixups
Lennart Poettering [Tue, 18 Dec 2018 13:34:39 +0000 (14:34 +0100)]
Merge pull request #11191 from poettering/hashmap-clear
rework hashmap_clear()
Lennart Poettering [Mon, 12 Nov 2018 16:19:48 +0000 (17:19 +0100)]
units: set NoNewPrivileges= for all long-running services
Previously, setting this option by default was problematic due to
SELinux (as this would also prohibit the transition from PID1's label to
the service's label). However, this restriction has since been lifted,
hence let's start making use of this universally in our services.
On SELinux system this change should be synchronized with a policy
update that ensures that NNP-ful transitions from init_t to service
labels is permitted.
Fixes: #1219
Lennart Poettering [Tue, 18 Dec 2018 13:07:23 +0000 (14:07 +0100)]
units: sort [Service] sections alphabetically
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 13:02:56 +0000 (14:02 +0100)]
Revert "units: set NoNewPrivileges= for all long-running services"
This reverts commit
3ca9940cb95cb263c6bfe5cfee72df232fe46a94.
Let's split the commit in two: the sorting and the changes.
Because there's a requirement to update selinux policy, this change is
incompatible, strictly speaking. I expect that distributions might want to
revert this particular change. Let's make it easy.
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 13:00:59 +0000 (14:00 +0100)]
Merge pull request #11200 from poettering/mailmap-updates-240
updates for .mailmap and NEWS
Lennart Poettering [Tue, 18 Dec 2018 12:07:24 +0000 (13:07 +0100)]
Merge pull request #11194 from poettering/resolved-soa-parent
be more conservative with set of RRs to authenticate
Lennart Poettering [Tue, 18 Dec 2018 12:04:43 +0000 (13:04 +0100)]
NEWS: add one more item
Lennart Poettering [Tue, 18 Dec 2018 11:56:56 +0000 (12:56 +0100)]
NEWS: update contributors list, taking new .mailmap into account
Lennart Poettering [Tue, 18 Dec 2018 11:55:00 +0000 (12:55 +0100)]
sort .mailmap alphabetically
Lennart Poettering [Tue, 18 Dec 2018 11:53:58 +0000 (12:53 +0100)]
update .mailmap a bit from v240 contributions
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 07:53:48 +0000 (08:53 +0100)]
test-mountpoint-util: more debug info
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 23:02:11 +0000 (00:02 +0100)]
meson: print EFI CC configuration nicely
In
595343fb4c99c2679d347ef7c19debfbfed6342e it was converted to an array.
This doesn't look good in the output. Let's convert it back to a string.
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 22:39:17 +0000 (23:39 +0100)]
meson: rename two more variables from _c to _sources
_c is misleading because .h files should be included in those lists too
(this tells meson that the build outputs should be rebuilt if the header
files change).
Follow-up for
1437822638ff9468fa78c7cfe56f8f55f955a61d.
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 22:19:06 +0000 (23:19 +0100)]
systemctl: add comment why whitespace in message is needed
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 10:35:48 +0000 (11:35 +0100)]
test-hashmap: add test to compare hashmap_free performance
The point here is to compare speed of hashmap_destroy with free and a different
freeing function, to the implementation details of hashmap_clear can be
evaluated.
Results:
current code:
/* test_hashmap_free (slow, 1048576 entries) */
string_hash_ops test took 2.494499s
custom_free_hash_ops test took 2.640449s
string_hash_ops test took 2.287734s
custom_free_hash_ops test took 2.557632s
string_hash_ops test took 2.299791s
custom_free_hash_ops test took 2.586975s
string_hash_ops test took 2.314099s
custom_free_hash_ops test took 2.589327s
string_hash_ops test took 2.319137s
custom_free_hash_ops test took 2.584038s
code with a patch which restores the "fast path" using:
for (idx = skip_free_buckets(h, 0); idx != IDX_NIL; idx = skip_free_buckets(h, idx + 1))
in the case where both free_key and free_value are either free or NULL:
/* test_hashmap_free (slow, 1048576 entries) */
string_hash_ops test took 2.347013s
custom_free_hash_ops test took 2.585104s
string_hash_ops test took 2.311583s
custom_free_hash_ops test took 2.578388s
string_hash_ops test took 2.283658s
custom_free_hash_ops test took 2.621675s
string_hash_ops test took 2.334675s
custom_free_hash_ops test took 2.601568s
So the test is noisy, but there clearly is no significant difference with the
"fast path" restored. I'm surprised by this, but it shows that the current
"safe" implementation does not cause a performance loss.
When the code is compiled with optimization, those times are significantly
lower (e.g. 1.1s and 1.4s), but again, there is no difference with the "fast
path" restored.
The difference between string_hash_ops and custom_free_hash_ops is the
additional cost of global modification and the extra function call.
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 10:33:52 +0000 (11:33 +0100)]
test-hashmap: use the usual function headers and print timing stats
This makes it slightly easier to watch for performance changes.
Zbigniew Jędrzejewski-Szmek [Tue, 18 Dec 2018 08:50:01 +0000 (09:50 +0100)]
hashmap: use ternary op to shorten code
Filipe Brandenburger [Thu, 6 Dec 2018 07:58:58 +0000 (23:58 -0800)]
lldp: add test coverage for sd_lldp_get_neighbors() with multiple neighbors
In particular, check that the order of the results is consistent.
This test coverage will be useful in order to refactor the compare_func
used while sorting the results.
When introduced, this test also uncovered a memory leak in sd_lldp_stop(),
which was then fixed by a separate commit using a specialized function
as destructor of the LLDP Hashmap.
Tested:
$ ninja -C build/ test
$ valgrind --leak-check=full build/test-lldp
Lennart Poettering [Mon, 17 Dec 2018 17:43:11 +0000 (18:43 +0100)]
sd-lldp: accept if a neighbor is already removed from the hashtable
Lennart Poettering [Mon, 17 Dec 2018 17:42:09 +0000 (18:42 +0100)]
hashmap: rework hashmap_clear() to be more defensive
Let's first remove an item from the hashmap and only then destroy it.
This makes sure that destructor functions can mdoify the hashtables in
their own codee and we won't be confused by that.
Lennart Poettering [Mon, 17 Dec 2018 20:16:48 +0000 (21:16 +0100)]
resolved: mention which RRs we query when requesting them to authenticate some other RR
Lennart Poettering [Mon, 17 Dec 2018 20:14:17 +0000 (21:14 +0100)]
resolved: only attempt non-answer SOA RRs if they are parents of our query
There's no value in authenticating SOA RRs that are neither answer to
our question nor parent of our question (the latter being relevant so
that we have a TTL from the SOA field for negative caching of the actual
query).
By being to eager here, and trying to authenticate too much we run the
risk of creating cyclic deps between our transactions which then causes
the over-all authentication to fail.
Fixes: #9771
Lennart Poettering [Mon, 17 Dec 2018 14:30:23 +0000 (15:30 +0100)]
timesync: fix serialization of IP address
Fixes: #11169
Lennart Poettering [Mon, 17 Dec 2018 15:46:36 +0000 (16:46 +0100)]
NEWS: document the usern/mknod borkage in 4.18 a bit
Lennart Poettering [Thu, 13 Dec 2018 15:53:40 +0000 (16:53 +0100)]
NEWS: add missing 'not'
Lennart Poettering [Mon, 17 Dec 2018 15:37:18 +0000 (16:37 +0100)]
docs: add missing section to ENVIRONMENT.md
No, this is not an env var understood by logind. Let's fix the
confusoin.
Lennart Poettering [Mon, 17 Dec 2018 18:36:36 +0000 (19:36 +0100)]
Merge pull request #11144 from keszybz/dissect-image-fix
Fix for dissect-image use in nspawn
Michal Sekletar [Mon, 17 Dec 2018 14:57:42 +0000 (15:57 +0100)]
core: do cgroup migration first and only then connect to journald
Fixes #11162
Lennart Poettering [Mon, 17 Dec 2018 18:22:07 +0000 (19:22 +0100)]
Merge pull request #11167 from yuwata/sd-resolve-typesafe
sd-resolve: introduce typesafe macros
Alexey Bogdanenko [Sun, 16 Dec 2018 16:04:28 +0000 (19:04 +0300)]
core: fix KeyringMode for user services
KeyringMode option is useful for user services. Also, documentation for the
option suggests that the option applies to user services. However, setting the
option to any of its allowed values has no effect.
This commit fixes that and removes EXEC_NEW_KEYRING flag. The flag is no longer
necessary: instead of checking if the flag is set we can check if keyring_mode
is not equal to EXEC_KEYRING_INHERIT.
Lennart Poettering [Mon, 17 Dec 2018 15:19:10 +0000 (16:19 +0100)]
Merge pull request #11159 from keszybz/udev-typedef
Udev typedef and normal error reporting
Michal Sekletar [Fri, 14 Dec 2018 14:17:27 +0000 (15:17 +0100)]
journald: correctly attribute log messages also with cgroupsv1
With cgroupsv1 a zombie process is migrated to root cgroup in all
hierarchies. This was changed for unified hierarchy and /proc/PID/cgroup
reports cgroup to which process belonged before it exited.
Be more suspicious about cgroup path reported by the kernel and use
unit_id provided by the log client if the kernel reports that process is
running in the root cgroup.
Users tend to care the most about 'log->unit_id' mapping so systemctl
status can correctly report last log lines. Also we wouldn't be able to
infer anything useful from "/" path anyway.
See: https://github.com/torvalds/linux/commit/
2e91fa7f6d451e3ea9fec999065d2fd199691f9d
Lennart Poettering [Mon, 17 Dec 2018 14:15:45 +0000 (15:15 +0100)]
Merge pull request #11184 from poettering/resolved-search-domains-max
resolve: bump max of dns servers/search domains
Tore Anderson [Mon, 17 Dec 2018 08:15:59 +0000 (09:15 +0100)]
resolve: enable EDNS0 towards the 127.0.0.53 stub resolver
This appears to be necessary for client software to ensure the reponse data
is validated with DNSSEC. For example, `ssh -v -o VerifyHostKeyDNS=yes -o
StrictHostKeyChecking=yes redpilllinpro01.ring.nlnog.net` fails if EDNS0 is
not enabled. The debugging output reveals that the `SSHFP` records were
found in DNS, but were considered insecure.
Note that the patch intentionally does *not* enable EDNS0 in the
`/run/systemd/resolve/resolv.conf` file (the one that contains `nameserver`
entries for the upstream DNS servers), as it is impossible to know for
certain that all the upstream DNS servers handles EDNS0 correctly.
Zbigniew Jędrzejewski-Szmek [Thu, 13 Dec 2018 15:39:05 +0000 (16:39 +0100)]
dissect-image: wait for the main device and all partitions to be known by udev
Fixes #10526.
Even if we waited for the root device to appear, the mount could still fail if
we didn't wait for udev to initalize the device. In particular, the
/dev/block/n:m path used to mount the device is created by udev, and nspawn
would sometimes win the race and the mount would fail with -ENOENT.
The same wait is done for partitions, since if we try to mount them, the same
considerations apply.
Note: I first implemented a version which just does a loop (with a short wait).
In that approach, udev takes on average ~800 µs to initialize the loopback
device. The approach where we set up a monitor and avoid the loop is a bit
nicer. There doesn't seem to be a significant difference in speed.
With 1000 invocations of 'systemd-nspawn -i image.squashfs echo':
loop (previous approach):
real 4m52.625s
user 0m37.094s
sys 2m14.705s
monitor (this patch):
real 4m50.791s
user 0m36.619s
sys 2m14.039s
Zbigniew Jędrzejewski-Szmek [Thu, 13 Dec 2018 13:35:15 +0000 (14:35 +0100)]
dissect-image: wait for the root to appear
dissect-image would wait for the root device and paritions to appear. But if we
had an image with no partitions, we'd not wait at all. If the kernel or udev
were slow in creating device nodes or symlinks, subsequent mount attempt might
fail if nspawn won the race.
Calling wait_for_partitions_to_appear() in case of no partitions means that we
verify that the kernel agrees that there are no partitions. We verify that the
kernel sees the same number of partitions as blkid, so let's that also in this
case.
This makes the failure in #10526 much less likely, but doesn't eliminate it
completely. Stay tuned.
Zbigniew Jędrzejewski-Szmek [Thu, 13 Dec 2018 12:28:58 +0000 (13:28 +0100)]
dissect-image: split out a chunk of dissect_image() out
No functional change, just moving code around.
Zbigniew Jędrzejewski-Szmek [Fri, 14 Dec 2018 11:32:33 +0000 (12:32 +0100)]
rfkill: move wait_for_initialized() to shared/
The function interface is the same, except that the output pointer may be NULL.
The implementation is slightly simplified by taking advantage of changes in
ancestor commit 'sd-device: attempt to read db again if it wasn't found', by
not creating a new sd_device object before re-checking the is_initialized
status.
v2:
- In v1, the old object was always used and the device received back from the
sd_device_monitor_start callback was ignored. I *think* the result will be
equivalent in both cases, because by the time we the callback gets called,
the db entry in the filesystem will also exist, and any subsequent access to
properties of the object would trigger a read of the database from disk. But
I'm not certain, and anyway, using the device object received in the callback
seems cleaner.
Lennart Poettering [Mon, 17 Dec 2018 12:34:50 +0000 (13:34 +0100)]
resolve: bump max of dns servers/search domains
Apparently people want more of these (as #11175 shows). Since this is
merely a safety limit for us, let's just bump all values substantially.
Fixes: #11175
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 11:29:28 +0000 (12:29 +0100)]
sd-device: remove holes in struct sd_device
Normally, we don't care too much about what pahole reports. But this structure
could potentially be allocated for every device on the system, i.e. in a large
number of copies. 5 vs 7 cache lines is nice.
/* size: 400, cachelines: 7, members: 53 */
/* sum members: 330, holes: 12, sum holes: 70 */
/* last cacheline: 16 bytes */
/* size: 320, cachelines: 5, members: 53 */
/* bit holes: 1, sum bit holes: 6 bits */
/* bit_padding: 5 bits */
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 11:13:35 +0000 (12:13 +0100)]
Merge pull request #11077 from yuwata/udev-issue-better-fix
sd-device: do not change buffer size if the socket is already bound
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 11:11:00 +0000 (12:11 +0100)]
Merge pull request #11180 from yuwata/update-bash-completion
several updates of bash completion for udevadm, resolvectl, and nspawn
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 10:29:58 +0000 (11:29 +0100)]
Merge pull request #11086 from poettering/nscd-cache-flush
flush nscd's caches when we register user/groups/hostnames
lbernstone [Mon, 17 Dec 2018 08:33:35 +0000 (01:33 -0700)]
hwdb: add accelerometer orientation quirk for the Teclast F5 (#11005)
Zbigniew Jędrzejewski-Szmek [Fri, 14 Dec 2018 09:27:24 +0000 (10:27 +0100)]
udev: use typedef for struct udev_event
Zbigniew Jędrzejewski-Szmek [Fri, 14 Dec 2018 09:24:40 +0000 (10:24 +0100)]
udev: use typedef for struct udev_rules
Zbigniew Jędrzejewski-Szmek [Mon, 17 Dec 2018 08:17:35 +0000 (09:17 +0100)]
Merge pull request #11179 from kraj/kraj/pu
Fix issues found with gcc trunk
Lennart Poettering [Sat, 15 Dec 2018 11:25:32 +0000 (12:25 +0100)]
fileio: when reading a full file into memory, refuse inner NUL bytes
Just some extra care to avoid any ambiguities in what we read.
Yu Watanabe [Mon, 17 Dec 2018 01:12:08 +0000 (10:12 +0900)]
NEWS: mention DynamicTransmitLoadBalancing=
Which was added by #11142.
Khem Raj [Mon, 17 Dec 2018 04:58:35 +0000 (20:58 -0800)]
core: Fix use after free case in load_from_path()
ensure that mfree() on filename is called after the logging function
which uses the string pointed by filename
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Yu Watanabe [Mon, 17 Dec 2018 05:44:38 +0000 (14:44 +0900)]
bash-completion: also suggests device units
Follow-up for
b6854081ffb26c32a8d1440346f9ee5b9d2f1e57.
Yu Watanabe [Mon, 17 Dec 2018 03:17:12 +0000 (12:17 +0900)]
bash-completion: udevadm: suggest argument for several options
Khem Raj [Mon, 17 Dec 2018 04:53:38 +0000 (20:53 -0800)]
sysctl: Don't pass null directive argument to '%s'
value pointer here is always NULL but subsequent use of that pointer
with a %s format will always be NULL, printing p instead would be a
valid string
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Yu Watanabe [Mon, 17 Dec 2018 02:13:15 +0000 (11:13 +0900)]
bash-completion: fix __get_interfaces()
Yu Watanabe [Mon, 17 Dec 2018 01:06:05 +0000 (02:06 +0100)]
Merge pull request #11142 from ssahani/bond-dynamic-tlb
netdev bond: add support to configure tlb_dynamic_lb
Yu Watanabe [Mon, 17 Dec 2018 01:01:43 +0000 (10:01 +0900)]
timesync: use typesafe resolve_getaddrinfo()
Yu Watanabe [Sat, 15 Dec 2018 12:01:06 +0000 (21:01 +0900)]
socket-proxyd: use typesafe resolve_getaddrinfo()
Yu Watanabe [Sat, 15 Dec 2018 11:57:50 +0000 (20:57 +0900)]
netdev: use typesafe resolve_getaddrinfo() in wireguard.c
Yu Watanabe [Sat, 15 Dec 2018 11:57:20 +0000 (20:57 +0900)]
netdev: sort headers
Yu Watanabe [Mon, 10 Dec 2018 06:45:48 +0000 (15:45 +0900)]
sd-resolve: add sd_resolve_get{addr,info}_with_destroy_callback() and typesafe macros
Zbigniew Jędrzejewski-Szmek [Fri, 14 Dec 2018 10:33:17 +0000 (11:33 +0100)]
sd-device: pass timestamp internally as usec_t not char*