Yu Watanabe
1ce7fecb4f
udev-rules: make import_parent_into_properties() take sd_device
2018-11-07 13:35:03 +09:00
Yu Watanabe
13c7b75f2f
udev-rules: make import_file_into_properties() take sd_device
2018-11-07 13:35:03 +09:00
Yu Watanabe
29b5eb5adf
udev-rules: make import_property_from_string() take sd_device
...
Also, this makes the function return negative errno, though its
return value is always ignored.
2018-11-07 13:35:03 +09:00
Yu Watanabe
f3d241feb2
udev: use sd_device for udev_event.dev_parent
2018-11-07 13:35:03 +09:00
Yu Watanabe
5ba7e79885
udev-rules: make match_attr() take sd_device instead of udev_device
2018-11-07 13:35:03 +09:00
Yu Watanabe
480ecb7d28
udev: use sd_device for udev_event.dev_db
...
Also, this adds sd_device_unref for the object in udev_event_free()
for safety and readability of code.
2018-11-07 13:35:03 +09:00
Yu Watanabe
e0bb2ff94b
udev-event: make udev_event_new() take sd_netlink and take a reference of that
2018-11-07 13:35:03 +09:00
Yu Watanabe
0f86dc900e
udev-event: make udev_event_new() take exec_delay
2018-11-07 13:35:03 +09:00
Evgeny Vereshchagin
212bd73c78
networkd: make network_load_one "public" and add a fuzzer for it
2018-11-06 19:01:32 +01:00
Evgeny Vereshchagin
e27aac11f2
networkd: make netdev_load_one "public" and add a fuzzer for it
2018-11-06 19:01:32 +01:00
Evgeny Vereshchagin
0621f03b13
networkd: remove a weird assertion from network_load_one
...
The assertion was added in dbffab87f1
but I'm not exactly sure
why. Now it just crashes a fuzzer I wrote. I, of course, could fix the fuzzer
so that it would generate names ending in ".network" if anyone would tell
me why the assertion should be kept here.
2018-11-06 19:01:32 +01:00
Evgeny Vereshchagin
3e180a2516
util: initialize _argtypes in VA_FORMAT_ADVANCE when systemd is built with MSan
...
This gets around https://github.com/google/sanitizers/issues/992 .
2018-11-06 19:01:32 +01:00
Yu Watanabe
49a060aca8
Merge pull request #10654 from poettering/srand-rdrand
...
random-util.c mini-fixes
2018-11-07 02:03:09 +09:00
Marco Trevisan (Treviño)
6260d28b8a
login: Don't mark framebuffer devices as master-of-seat devices
...
Currently we consider any framebuffer device as enough to have a
valid graphical session, but this might lead to many false postives
like in the case of framebuffer devices that have a linked drm card
which is still in the process of being added, or for vesa fb, and
so it doesn't ensure us that we can have a proper graphical session.
Since these days we normally don't consider anything without a DRM
card able to provide a full graphical session, let's not set this
at this level.
Drivers which can provide a graphical session with the sole fb are
still free to mark any device as `master-of-seat`
Fixes #10435
2018-11-06 20:02:26 +03:00
Lennart Poettering
39adc47495
Merge pull request #10658 from yuwata/udevd-worker-performance
...
udev: improve performance
2018-11-06 20:01:37 +03:00
Lennart Poettering
9edcbc4f44
Merge pull request #10602 from yuwata/sd-device-logs
...
update log messages
2018-11-06 19:33:51 +03:00
Lennart Poettering
b992109b3e
Merge pull request #10633 from yuwata/sd-resolve-destroy
...
Another solution to fix wireguard issues
2018-11-06 19:30:59 +03:00
Yu Watanabe
ed2e7967be
time-util: make parse_sec() not accept "12.34.56"
...
This also changes the rational number treatment.
So, the limitations introduced by 8079c90333
and f6a178e91d
are relaxed.
Fixes #10619 .
2018-11-06 19:24:47 +03:00
Yu Watanabe
faae64fa3d
udevd: increase default number of workers
...
The uevent handling in udevd is not cpu hungry.
So, let's increase the default number of workers per cpu.
This decrease the number of queued uevents.
Without this commit (children_max is 16 on my laptop)
```
$ journalctl -b -u systemd-udevd.service | grep reached | wc -l
1544
```
With this commit (children_max is 30 on my laptop)
```
$ journalctl -b -u systemd-udevd.service | grep reached | wc -l
7
```
2018-11-07 00:25:20 +09:00
Yu Watanabe
eca195ec23
udevd: wait 3 seconds before killing worker processes
...
During boot process, many worker processes are forked and killed.
To decrease cycles of forking and killing worker, let's wait
3 seconds before killing workers. If new uevent or inotify event
comes within the delay, the killing porcess will be cancelled.
2018-11-07 00:25:13 +09:00
Yu Watanabe
da14313418
udevd: drop redundant logic of receiving uevent
...
If there exists pending uevents, then sd-event invokes uevent handler.
So, it is not necessary to receive the next uevent in inotify event.
2018-11-06 23:53:55 +09:00
Yu Watanabe
b6107f010a
udevd: decrease indentation
2018-11-06 23:53:50 +09:00
Lennart Poettering
a0ca258adf
Merge pull request #10597 from toanju/fix-networkd-l3-loss
...
networkd: don't remove ip address or route
2018-11-06 17:44:24 +03:00
Yu Watanabe
05e6d9c64b
udevd: merge conditions to decrease indentation
2018-11-06 23:21:25 +09:00
Lennart Poettering
ed63705975
Merge pull request #10650 from yuwata/udevadm-trigger-use-write-string-file
...
udevadm: use write_string_file() helper function
2018-11-06 16:46:25 +03:00
Tobias Jungel
db688b7e55
networkd: cleanup for #10542
...
fixes: 53b1f7d
2018-11-06 16:42:12 +03:00
Lennart Poettering
ce9d553d2e
Merge pull request #10652 from yuwata/lldp-ndisc-string-table
...
lldp,ndisc: update debug logs
2018-11-06 16:41:48 +03:00
Giuseppe Scrivano
875622c39e
core, sysctl: skip ENOENT for /proc/sys/net/unix/max_dgram_qlen
...
sysctl is disabled for /proc mounted from an user namespace thus entries like
/proc/sys/net/unix/max_dgram_qlen do not exist. In this case, skip the error
and do not try to change the default for the AF_UNIX datagram queue length.
2018-11-06 16:41:34 +03:00
Lennart Poettering
0e28c86f54
ask-password: fix minor memory leak on error path
...
CID 1396557
2018-11-06 16:41:01 +03:00
Tobias Jungel
7ecf0c3e17
networkd: don't remove route
...
In case networkd is restarted this prevents a removal of an already existing
route that would be configured using networkd. With the proposed changes the
route will be kept on the interface without removing. This happens only on
physical hosts or VMs since networkd handles interface configuration slightly
different in containers.
2018-11-06 13:28:12 +01:00
Tobias Jungel
30226d2718
networkd: don't remove ip address
...
In case networkd is restarted this prevents a removal of an already existing IP
address that would be configured using networkd. With the proposed changes the
IP address will be kept on the interface without removing. This happens only on
physical hosts or VMs since networkd handles interface configuration slightly
different in containers.
2018-11-06 13:26:37 +01:00
Yu Watanabe
7cadbe09e9
sd-device: use write_string_file() helper to write sysattr
2018-11-06 21:24:03 +09:00
Yu Watanabe
835d18ba20
fileio: introduce WRITE_STRING_FILE_NOFOLLOW flag for write_string_file() and friends
2018-11-06 21:24:03 +09:00
Yu Watanabe
57512c893e
tree-wide: set WRITE_STRING_FILE_DISABLE_BUFFER flag when we write files under /proc or /sys
2018-11-06 21:24:03 +09:00
Yu Watanabe
76cdddfb9d
udevd: use set_oom_score_adjust() to set OOM score
2018-11-06 21:24:03 +09:00
Yu Watanabe
92c40e1dc8
udevadm: use write_string_file() helper function
2018-11-06 21:24:03 +09:00
Yu Watanabe
90208b8217
test: add tests for string tables for lldp and ndisc events
2018-11-06 20:15:09 +09:00
Yu Watanabe
a2dcda328a
ndisc: improve debug log message
2018-11-06 20:15:09 +09:00
Yu Watanabe
4f0e4d29b0
lldp: improve debug log message
2018-11-06 20:15:09 +09:00
Lennart Poettering
92025e8f52
random-util: initialize srand() from RDRAND
...
It's cheap to get RDRAND and given that srand() is anyway not really
useful for trusted randomness let's use RDRAND for it, after all we have
all the hard work for that already in place.
2018-11-06 12:12:18 +01:00
Lennart Poettering
54bf23151f
random-util: we don't intend to write to auxv, hence make it const
2018-11-06 12:12:18 +01:00
Yu Watanabe
6bee206591
udev-node: add one more debug log when failed to create symlink
2018-11-06 15:45:22 +09:00
Yu Watanabe
a126a38a9f
udev-node: drop redundant log message
...
As node_symlink() logs almost same message.
2018-11-06 15:45:22 +09:00
Yu Watanabe
6174a243f9
udev: setting the same log level to SYSTEMD realm
...
Otherwise, many debug logs from libsystemd are dropped.
2018-11-06 15:45:22 +09:00
Yu Watanabe
a5db6debcd
test: check returned value of sd_device_get_usec_since_initialized()
2018-11-06 15:45:22 +09:00
Yu Watanabe
754d6c26b4
test: show is_initialized flag in log message of test-sd-device
...
And drop devpath, as it is redundant for most cases.
2018-11-06 15:45:22 +09:00
Yu Watanabe
ecbe9873a9
test: show name of testing functions in test-sd-device
2018-11-06 15:45:22 +09:00
Yu Watanabe
c7d54daef9
sd-device: normalize debug messages
2018-11-06 15:45:22 +09:00
Yu Watanabe
38d1555d7c
sd-device: drop subsystem from log_device_*()
...
The sd_device object always has syspath and sysname, but subsytem may not.
Also, it may take some costs to get subsystem.
So, let's drop subsystem from logs.
2018-11-06 15:45:22 +09:00
Yu Watanabe
cc0bf5e148
udev-watch: adjust level of log messages
2018-11-06 11:15:39 +09:00
Yu Watanabe
7fe3324c5e
udev-watch: make udev_watch_lookup() return 1 when device found
2018-11-06 11:15:39 +09:00
Yu Watanabe
b7759e0403
udev: drop redundant log message and fix returned error code
2018-11-06 11:15:39 +09:00
Lennart Poettering
8912a99cea
Merge pull request #10606 from yuwata/udev-tests
...
test: mask hwdb-update.services in most tests
2018-11-05 23:14:42 +03:00
Lennart Poettering
a54e373163
Merge pull request #10618 from yuwata/fix-10615
...
network: fix several issues in config parser
2018-11-05 17:37:25 +03:00
Yu Watanabe
3d8d1f13d5
test: add tests for config_parse_address()
2018-11-05 16:46:26 +09:00
Yu Watanabe
b7cb445235
network: use in_addr_default_prefix_from_string_auto() in config_parse_address()
2018-11-05 16:46:26 +09:00
Yu Watanabe
c1d58204b2
test: add tests for in_addr_default_prefix_from_string() or friend
2018-11-05 16:46:26 +09:00
Yu Watanabe
a4798d4e6d
util: introduce in_addr_default_prefix_from_string() and friends
...
It is similar to in_addr_prefix_from_string() but it determines
the prefix length from address if it is not specified.
2018-11-05 16:46:26 +09:00
Yu Watanabe
67944f5c26
util: use strndup() instead of strndupa()
...
As the input string may be comes from command line or config files.
2018-11-05 16:46:00 +09:00
Yu Watanabe
a7cc45caad
network: sort headers in wireguard.h
2018-11-05 13:19:02 +09:00
Yu Watanabe
fc72155321
network: use structured initializers in wireguard.c
2018-11-05 13:19:02 +09:00
Yu Watanabe
c195364da5
network: fix crash in wireguard_done()
...
Fixes another issue in #10629 .
2018-11-05 13:19:02 +09:00
Yu Watanabe
56ba90c2df
network: use destroy callback to unref netdev attached to event source
2018-11-05 13:19:02 +09:00
Yu Watanabe
8173d1d0ec
network: use destroy callback to clear resolved wireguard endpoints
2018-11-05 13:19:02 +09:00
Yu Watanabe
c4397d94c3
network: link_drop() and netdev_drop() remove reference from manager
2018-11-05 13:19:02 +09:00
Yu Watanabe
2382c9367b
sd-event: add sd_event_source_{get,set}_floating()
2018-11-05 13:19:02 +09:00
Yu Watanabe
b3ae7237c6
sd-resolve: introduce sd_resolve_query_{get,set}_floating()
2018-11-05 13:19:02 +09:00
Yu Watanabe
a8319dea1d
sd-resolve: introduce sd_resolve_query_{get,set}_destroy_callback()
2018-11-05 13:19:02 +09:00
Yu Watanabe
383bb2bc1a
vlan-util: add assertions to parse_vlanid()
2018-11-04 00:31:46 +09:00
Yu Watanabe
2e5da68b7d
network: add missing .sections element for vcan and vrf
...
Fixes #10629 .
2018-11-04 00:31:46 +09:00
Yu Watanabe
de4224aa22
network: fix memleak abot Address.label
...
Also fix possible memleak about Address.section.
Fixes #10628 .
2018-11-04 00:31:46 +09:00
Yu Watanabe
7946d57f18
network: drop error cause in log message
...
Fixes for 21486d9e99
.
2018-11-04 00:31:46 +09:00
Yu Watanabe
ecee0abe77
network: fix memleak in static prefix
...
The fix by 744faf5e4e
is not perfect,
as the section leaks if `hashmap_put()` in `prefix_new_static()` fails.
2018-11-04 00:31:46 +09:00
Yu Watanabe
6f1a96ded4
netdev: also support GENEVE.UDP6ZeroChecksum{Tx,Rx}=
...
After 53c06862c1
, we prefer Checksum
instead of CheckSum. Let's do so for GENEVE netdev.
2018-11-04 00:31:46 +09:00
Yu Watanabe
fd3005f9b8
network: fix worng offset for .network parser
2018-11-04 00:31:46 +09:00
Yu Watanabe
899f0d259d
network: fix memleak in config_parse_hwaddr()
...
Fixes #10615 .
2018-11-04 00:31:46 +09:00
Yu Watanabe
44386b449b
network: improve readability of config_parse_ifalias()
2018-11-04 00:31:46 +09:00
Yu Watanabe
25ed70f76f
network: fix possible memleak caused by multiple setting of Bridge=, Bond= or VRF=
2018-11-04 00:31:46 +09:00
Yu Watanabe
5f74e49e85
test: add test for radv_prefix_delegation_{from,to}_string()
2018-11-04 00:31:46 +09:00
Yu Watanabe
6b1dec6696
network: introduce radv_prefix_delegation_{from,to}_string()
2018-11-04 00:31:46 +09:00
Yu Watanabe
8a4871c7d1
network: fix indentation
2018-11-04 00:31:46 +09:00
Yu Watanabe
8627d1120a
network: invert the order in comparison
2018-11-04 00:31:46 +09:00
Yu Watanabe
1176b054e1
network: shorten code a bit
2018-11-04 00:31:06 +09:00
Yu Watanabe
76281c6408
test: also run compile tests for libudev.h
2018-11-03 18:00:47 +09:00
Franck Bui
1d88bce2a0
coredump: only install coredump.conf when ENABLED_COREDUMP=true
2018-11-02 14:31:12 +01:00
Tobias Jungel
99f68ef02d
networkd: add missing bonding options ( #10542 )
...
Add support for bonding options system prio, port key and actor system mac.
These options exist in the linux kernel since 4.2
(torvalds/linux@171a42c38c )
Details:
https://www.kernel.org/doc/Documentation/networking/bonding.txt
2018-11-02 10:31:20 +09:00
Yu Watanabe
cb700a11d9
network: drop white space in log message
2018-11-01 23:41:29 +09:00
Yu Watanabe
0d7febd002
network: fix hash function for routing policy rule
2018-11-01 23:40:56 +09:00
Yu Watanabe
e6b65ab760
network: fix return value of routing_policy_rule_get()
...
To distinguish source of rule.
2018-11-01 23:38:11 +09:00
Yu Watanabe
a6276f0f3f
network: fix memleak in routing policy
...
As set_put() may fail if input is duplicated.
2018-11-01 23:24:20 +09:00
Yu Watanabe
744faf5e4e
network: fix memleak in static prefix
...
Fixes #10608 .
2018-11-01 21:46:38 +09:00
Yu Watanabe
f19ee68140
network: fix segfault in manager_free()
...
Fixes #10605 .
2018-11-01 20:26:02 +09:00
Lennart Poettering
6619ad889d
nspawn: beef up netns checking a bit, for compat with old kernels
...
Fixes : #10544
2018-10-31 21:42:45 +03:00
Xiang Fan
c7b7d74e81
ask-password: check keyring in ask_password_tty and ask_password_agent
...
A race condition happens when calling ask_password_auto() multiple times
to unlock several disks on boot and effectively no password caching is
utilized. This patch fixes it by polling the cache when waiting for
the password.
2018-10-31 18:26:58 +01:00
Lennart Poettering
45313bd921
Merge pull request #10010 from msekletar/cryptsetup-generator-keydev-followups
...
cryptsetup-generator: keydev support - followups
2018-10-31 18:26:25 +01:00
Lennart Poettering
e2d39e549f
nspawn: add proper error message if setns() on network namespace fd fails
...
Addresses: https://github.com/systemd/systemd/pull/10589#issuecomment-434670595
2018-10-31 18:07:30 +01:00
Lennart Poettering
1ad6e8b302
core: split environment block mantained by PID 1's Manager object in two
...
This splits the "environment" field of Manager into two:
transient_environment and client_environment. The former is generated
from configuration file, kernel cmdline, environment generators. The
latter is the one the user can control with "systemctl set-environment"
and similar.
Both sets are merged transparently whenever needed. Separating the two
sets has the benefit that we can safely flush out the former while
keeping the latter during daemon reload cycles, so that env var settings
from env generators or configuration files do not accumulate, but
dynamic API changes are kept around.
Note that this change is not entirely transparent to users: if the user
first uses "set-environment" to override a transient variable, and then
uses "unset-environment" to unset it again things will revert to the
original transient variable now, while previously the variable was fully
removed. This change in behaviour should not matter too much though I
figure.
Fixes : #9972
2018-10-31 18:00:53 +01:00
Lennart Poettering
bea1a01310
strv: wrap strv_new() in a macro so that NULL sentinel is implicit
2018-10-31 18:00:52 +01:00
Lennart Poettering
fc03c53653
Merge pull request #10573 from faheel/master
...
Convert remaining docs to Markdown
2018-10-31 15:15:41 +01:00
Lennart Poettering
0aeff581cc
Merge pull request #10556 from yuwata/udev-event-cleanup-2
...
udev-event: several fixes for previous PR
2018-10-31 12:10:12 +01:00