summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #14983 from ssahani/dhcp-use-routes-14982Yu Watanabe2020-03-021-32/+31
|\ | | | | network: Allow to configure GW even if UseRoutes=false
| * network: Allow to configure GW even UseRoutes=falseSusant Sahani2020-03-021-32/+31
| | | | | | | | | | | | | | | | | | When use UseRoutes=False so the DHCP request itself does not request for Classless Static Routes option. As a result, the DHCP server will only respond with a Router option. In this case since we are using the UseRoutes=False option the gateway that comes in via the router option does not get configured. This patch fixes theis behaviour.
* | Merge pull request #14976 from keszybz/show-status-messageZbigniew Jędrzejewski-Szmek2020-03-019-37/+60
|\ \ | |/ |/| core: fix message about show status state
| * pid1: add new mode systemd.show-status=error and use it when 'quiet' is passedZbigniew Jędrzejewski-Szmek2020-03-014-2/+4
| | | | | | | | | | | | | | | | | | | | | | systemd.show-status=error is useful for the case where people care about errors only. If people want to have a quiet boot, they most likely don't want to see all status output even if there is a delay in boot, so make "quiet" imply systemd.show-status=error instead of systemd.show-status=auto. Fixes #14976.
| * pid1: when showing error status, do not switch to status=temporaryZbigniew Jędrzejewski-Szmek2020-03-016-9/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We would flip to status=temporary mode on the first error, and then switch back to status=auto after the initial transaction was done. This isn't very useful, because usually all the messages about successfully started units and not related to the original failure. In fact, all those messages most likely cause the information about the prime error to scroll off screen. And if the user requested quiet boot, there's no reason to think that they care about those success messages. Also, when logging about dependency cycles, treat this similarly to a unit error and show the message even if the status is "soft disabled" (before we wouldn't show it in that case).
| * pid1: make cylon timeout significantly bigger when not showing any messagesZbigniew Jędrzejewski-Szmek2020-03-011-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we are booting with show-status=on, normally new status updates happen a few times per second. Thus, it is reasonable to start showing the cylon eye after 5 s, because that means a significant delay has happened. When we are running with show-status=off or show-status=auto (and no error had occured), the user is expecting maybe 15 to 90 seconds with no output (because that's usually how long the whole boot takes). So we shouldn't bother the user with information about a few seconds of delay. Let's make the timeout 25s if we are not showing any messages. Conversly, when we are outputting status messages, we can show the cylon eye with a shorter delay, now that we removed the connection to enablement status. Let's make this 2s, so users get feedback about delays more quickly.
| * pid1: touch the /run/systemd/show-status just onceZbigniew Jędrzejewski-Szmek2020-03-011-6/+8
| | | | | | | | | | | | | | We know if we created the file before, no need to repeat the operation. The state in /run should always match our internal state. Since we call manager_set_show_status() quite often internally, this saves quite a few pointless syscalls.
| * pid1: when printing status message status, give reasonZbigniew Jędrzejewski-Szmek2020-03-014-15/+16
| |
| * core: fix message about show status stateZbigniew Jędrzejewski-Szmek2020-03-013-10/+15
| | | | | | | | | | | | | | | | We would say "Enabling" also for SHOW_STATUS_AUTO, which is actually "soft off". So just print the exact state to make things easier to understand. Also add a helper function to avoid repeating the enum value list. For #14814.
* | resolve: error handling improvementsYu Watanabe2020-03-011-9/+18
| |
* | Merge pull request #14966 from keszybz/journalctl-facilitiesYu Watanabe2020-03-012-1/+79
|\ \ | | | | | | journalctl: filtering by facility
| * | journalctl: implement --facility=fooZbigniew Jędrzejewski-Szmek2020-02-291-0/+78
| | | | | | | | | | | | Fixes #9716.
| * | basic/string-table: avoid crash when table is sparseZbigniew Jędrzejewski-Szmek2020-02-271-1/+1
| | | | | | | | | | | | | | | Generated _from_string() would crash when invoked on a table with some holes.
* | | homed: fix typoYu Watanabe2020-02-291-5/+5
| | |
* | | Revert "namespace: fix MAC labels of /dev when PrivateDevices=yes"Topi Miettinen2020-02-297-40/+12
| | | | | | | | | | | | This reverts commit e6e81ec0a56861b905db975fc32c83e2f2faca7d.
* | | pid1: do not fail if we get EPERM while setting up network nameZbigniew Jędrzejewski-Szmek2020-02-291-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a user namespace container: Feb 28 12:45:53 0b2420135953 systemd[1]: Starting Home Manager... Feb 28 12:45:53 0b2420135953 systemd[21]: systemd-homed.service: Failed to set up network namespacing: Operation not permitted Feb 28 12:45:53 0b2420135953 systemd[21]: systemd-homed.service: Failed at step NETWORK spawning /usr/lib/systemd/systemd-homed: Operation not permitted Feb 28 12:45:53 0b2420135953 systemd[1]: systemd-homed.service: Main process exited, code=exited, status=225/NETWORK Feb 28 12:45:53 0b2420135953 systemd[1]: systemd-homed.service: Failed with result 'exit-code'. Feb 28 12:45:53 0b2420135953 systemd[1]: Failed to start Home Manager. We should treat this similarly to the case where network namespace are not supported at all. https://bugzilla.redhat.com/show_bug.cgi?id=1807465
* | | execute: Make '+' exec prefix ignore PrivateTmp=yesNate Jones2020-02-292-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | The man pages state that the '+' prefix in Exec* directives should ignore filesystem namespacing options such as PrivateTmp. Now it does. This is very similar to #8842, just with PrivateTmp instead of PrivateDevices.
* | | Merge pull request #14968 from keszybz/docsZbigniew Jędrzejewski-Szmek2020-02-281-0/+7
|\ \ \ | | | | | | | | Assorted updates to documentation
| * | | meson: explain GIT_VERSION and PROJECT_VERSIONZbigniew Jędrzejewski-Szmek2020-02-281-0/+7
| | |/ | |/| | | | | | | Fixes #11415.
* | | network: fix typo in commentYu Watanabe2020-02-281-1/+1
| | |
* | | namespace: fix MAC labels of /dev when PrivateDevices=yesTopi Miettinen2020-02-287-12/+40
|/ / | | | | | | | | | | | | | | | | | | | | | | Without changing the SELinux label for private /dev of a service, it will take a generic file system label: system_u:object_r:tmpfs_t:s0 After this change it is the same as without `PrivateDevices=yes`: system_u:object_r:device_t:s0 This helps writing SELinux policies, as the same rules for `/dev` will apply despite any `PrivateDevices=yes` setting.
* | network: assume Scope=host when Address= is loopback addressYu Watanabe2020-02-282-0/+5
| | | | | | | | Fixes #14903.
* | Merge pull request #14964 from yuwata/conf-parser-fix-line-numberAnita Zhang2020-02-271-1/+3
|\ \ | | | | | | conf-parser: fix line number in error message
| * | conf-parser: fix line number in error messageYu Watanabe2020-02-281-1/+3
| | | | | | | | | | | | Fixes #14929.
* | | Merge pull request #14965 from keszybz/journal-rotation-hintAnita Zhang2020-02-273-3/+22
|\ \ \ | | | | | | | | systemctl: be more specific when emitting warning about rotated journal
| * | | systemctl: be more specific when emitting warning about rotated journalZbigniew Jędrzejewski-Szmek2020-02-273-3/+22
| | |/ | |/| | | | | | | | | | See inline comment for disucssion. Fixes #14281.
* | | udevadm: show more error message during exporting databaseYu Watanabe2020-02-271-4/+4
| |/ |/| | | | | Closes #14959.
* | network: remove redundant %m in error messageYu Watanabe2020-02-271-2/+2
| |
* | udev-builtin-input_id: any i2c mouse is a pointing stickPeter Hutterer2020-02-271-2/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Where we have a device that looks like a mouse and is connected over i2c, tag it as pointing stick. There is no such thing as a i2c mouse. Even touchpads that aren't recognized by the kernel will not show up as i2c mouse - either the touchpad follows the Win8.1 specs in which case the kernel switches it to multitouch mode and it shows up like a touchpad. The built-in trackpoint, if any, is then the i2c mouse device. Where the touchpad doesn't follow the spec, the kernel will not handle it and the touchpad remains on the PS/2 legacy bus - not i2c. Hence we can assume that any i2c mouse device is really a pointing stick.
* | Merge pull request #14953 from yuwata/userdb-fix-groupdbYu Watanabe2020-02-271-10/+2
|\ \ | | | | | | userdb: make groupdb_all() always set iterator when it returns >= 0
| * | userdb: make groupdb_all() always set iterator when it returns >= 0Yu Watanabe2020-02-271-8/+2
| | |
| * | userdb: drop unnecessary gotoYu Watanabe2020-02-271-2/+0
| | |
* | | userdb: allow dots in usernameMike Gilbert2020-02-273-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | This prevents an error in pam_systemd when logging in. sshd[2623165]: pam_unix(sshd:session): session opened for user tony.stark(uid=10001) by (uid=0) sshd[2623165]: pam_systemd(sshd:session): Failed to get user record: Invalid argument Bug: https://bugs.gentoo.org/708824
* | | swap: finish the secondary swap units' jobs if deactivation of the primary ↵HATAYAMA Daisuke2020-02-271-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | swap unit fails Currently, if deactivation of the primary swap unit fails: # LANG=C systemctl --no-pager stop dev-mapper-fedora\\x2dswap.swap Job for dev-mapper-fedora\x2dswap.swap failed. See "systemctl status "dev-mapper-fedora\\x2dswap.swap"" and "journalctl -xe" for details. then there are still the running stop jobs for all the secondary swap units that follow the primary one: # systemctl list-jobs JOB UNIT TYPE STATE 3233 dev-disk-by\x2duuid-2dc8b9b1\x2da0a5\x2d44d8\x2d89c4\x2d6cdd26cd5ce0.swap stop running 3232 dev-dm\x2d1.swap stop running 3231 dev-disk-by\x2did-dm\x2duuid\x2dLVM\x2dyuXWpCCIurGzz2nkGCVnUFSi7GH6E3ZcQjkKLnF0Fil0RJmhoLN8fcOnDybWCMTj.swap stop running 3230 dev-disk-by\x2did-dm\x2dname\x2dfedora\x2dswap.swap stop running 3234 dev-fedora-swap.swap stop running 5 jobs listed. This remains endlessly because their JobTimeoutUSec is infinity: # LANG=C systemctl show -p JobTimeoutUSec dev-fedora-swap.swap JobTimeoutUSec=infinity If this issue happens during system shutdown, the system shutdown appears to get hang and the system will be forcibly shutdown or rebooted 30 minutes later by the following configuration: # grep -E "^JobTimeout" /usr/lib/systemd/system/reboot.target JobTimeoutSec=30min JobTimeoutAction=reboot-force The scenario in the real world seems that there is some service unit with KillMode=none, processes whose memory is being swapped out are not killed during stop operation in the service unit and then swapoff command fails. On the other hand, it works well in successful case of swapoff command because the secondary jobs monitor /proc/swaps file and can detect deletion of the corresponding swap file. This commit fixes the issue by finishing the secondary swap units' jobs if deactivation of the primary swap unit fails. Fixes: #11577
* | | ata_id: Add support for host managed zone block devices (#14933)Ryan Attard2020-02-271-1/+1
| | | | | | | | | | | | If the peripheral device type is that of a host managed zone block device (0x14), the device supports the same identification mechanisms as conventional disks (0x00).
* | | Merge pull request #14950 from keszybz/kernel-install-script-boot_imageAnita Zhang2020-02-261-0/+1
|\ \ \ | |/ / |/| | kernel-install: strip BOOT_IMAGE= from kernel options
| * | kernel-install: strip BOOT_IMAGE= from kernel optionsZbigniew Jędrzejewski-Szmek2020-02-261-0/+1
| |/ | | | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1716164.
* | Merge pull request #14944 from yuwata/userdb-fix-iteratorAnita Zhang2020-02-261-6/+2
|\ \ | | | | | | userdb: make userdb_all() always set iterator when it returns >= 0
| * | userdb: make userdb_all() always set iterator when it returns >= 0Yu Watanabe2020-02-261-6/+2
| |/ | | | | | | Fixes #14868.
* | userdb: fix memleakYu Watanabe2020-02-271-1/+1
| | | | | | | | Fixes #14947.
* | Merge pull request #14942 from keszybz/rename-homesYu Watanabe2020-02-276-45/+45
|\ \ | | | | | | Rename "home" to "home area"
| * | tree-wide: replace "asked to inhibit it" with "is inhibiting this"Zbigniew Jędrzejewski-Szmek2020-02-261-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem with the original form is that the subject of the sentence with passive void is "the system", and we're not inhibiting the system. In English the sense can be made out, but the form is gramatically incorrect. In fact, the Polish translation got this wrong: > msgid "Power off the system while an application is inhibiting this" > msgstr "Wyłączenie systemu, kiedy program zażądał jego wstrzymania" "jego" can only refer to "the system", because of gender mismatch with "power off". If our translators cannot grok the message, then we should probably reword it. Also, drop the "asked to" part. Everything we do is over IPC, so we only ever "ask" for things, and this adds no value.
| * | tree-wide: replace present participle formsZbigniew Jędrzejewski-Szmek2020-02-262-24/+24
| | | | | | | | | | | | Infinitive is shorter and sounds better too.
| * | tree-wide: s/home/home area/gZbigniew Jędrzejewski-Szmek2020-02-265-22/+22
| |/ | | | | | | | | | | | | | | "home" is okay-ish in English, but rather awkward in many other languages. For example, even before this change, in fr.po we had "un espace personnel" as the translation everywhere. Let's use a less overloaded term. Fixes #14789.
* | network: use VRF's route table if VRF= is setYu Watanabe2020-02-261-1/+6
|/ | | | Fixes #14940.
* systemd: Fix busctl crash on aarch64 when setting output table formatAlin Popa2020-02-168-14/+14
| | | | | | | | The enum used for column names is integer type while table_set_display() is parsing arguments on size_t alignment which may result in assert in table_set_display() if the size between types missmatch. This patch cast the enums to size_t. It also fixes all other occurences for table_set_display() and table_set_sort().
* systemd: Fix busctl crash on aarch64 when setting output table formatAlin Popa2020-02-161-2/+20
| | | | | | | | The enum used for column names is integer type while table_set_display() is parsing arguments on size_t alignment which may result in assert in table_set_display() if the size between types missmatch. This patch cast the enums to size_t. An alternative solution would be to change the table_set_display() function arguments to unsigned type.
* makefs: strdup arguments to mkfsOliver Giles2020-02-131-4/+9
| | | | | Don't pass values from argv[] directly to child process forked using safe_fork, because it clears argv[]. strdup them first.
* Merge pull request #14833 from kpfleming/multiple-ipv6token-addressesYu Watanabe2020-02-123-52/+104
|\ | | | | Support multiple IPv6Token 'static' addreses on an interface
| * network: Allow multiple IPv6Token 'static' items to generate addressesKevin P. Fleming2020-02-101-49/+94
| | | | | | | | | | This patch allows multiple addresses using 'static' IPv6Tokens to be generated for a single network interface.