Ninjatrappeur's systemd working tree
Go to file
Franck Bui 0ef1adf512 vconsole-setup: downgrade log message when setting font fails on dummy console
Since commit 883eb9be98, vconsole-setup might be
called again to operate on dummy console where font operations are not
supported but where it's still important to have the correct keymap set [0][1].

vconsole-setup is mainly called by udev but can also be run via a dependency of
an early service. Both cases might end up calling vconsole-setup on the dummy
console.

The first case can happen during early boot even on systems that use (instead
of the dummy console) a "simple" video console driver supporting font
operations (such as vgacon) until a more specific driver (such as i915) takes
the console over. While this is happening vgacon is deactivated and temporarly
replaced by the dummy console [2].

There are also other cases where systemd-vconsole-setup might be called on
dummy console especially during (very) early boot. Indeed
systemd-vconsole-setup.service might be pulled in by early interactive services
such as 'dracut-cmdline-ask.service` which is run before udev.

If that happens on platforms with no grapical HWs (such as embedded ARM) or
with dummy console initially installed until a driver takes over (like Xen and
xen-fbfront) then setting font will fail.

Therefore this patch downgrades the log message emitted when setting font fails
to LOG_DEBUG and when font operations is not implemented like it's the case for
the dummy console.

Fixes: #16406.

[0] https://github.com/systemd/systemd/issues/10826
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1652473
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/vga/vgaarb.c?h=v5.7#n204
2020-07-20 08:15:50 +02:00
.github Revert "ci: turn off the "upstream-systemd-ci" ppa" 2020-07-15 08:59:25 +02:00
.lgtm/cpp-queries lgtm: complain about accept() [people should use accept4() instead, due to O_CLOEXEC] 2019-04-10 20:03:38 +02:00
.mkosi man,mkosi: bump Fedora version 2020-06-02 14:08:35 +02:00
catalog udevadm: beef up deprecation log warning 2020-07-14 14:57:19 +02:00
coccinelle tree-wide: use set_ensure_put() 2020-06-22 16:32:37 +02:00
docs nss-mymachines: drop support for UID/GID resolving 2020-07-14 17:08:12 +02:00
factory/etc nss-mymachines: drop support for UID/GID resolving 2020-07-14 17:08:12 +02:00
hwdb.d hwdb: check that uppercase digits are used in modalias patterns 2020-07-17 11:15:58 +02:00
man build: skip installation of 2 files if feature is disabled 2020-07-18 13:50:39 +09:00
modprobe.d Add SPDX license headers to various assorted files 2017-11-19 19:08:15 +01:00
network network: add TUN/TAP vt-* network rule for VMs 2020-04-17 19:15:00 +02:00
po l10n: update Czech Translation 2020-07-01 17:44:20 +02:00
presets Revert "presets: "disable" all passive targets by default" 2020-05-26 20:51:58 +02:00
rules.d udev: split attribute assignment for MMC cards 2020-06-25 18:40:45 +02:00
semaphoreci ci: switch to Ubuntu Bionic on Semaphore 2020-06-25 10:47:33 +02:00
shell-completion shell-completion: add missing verbs for networkctl 2020-06-30 08:56:36 +02:00
src vconsole-setup: downgrade log message when setting font fails on dummy console 2020-07-20 08:15:50 +02:00
sysctl.d sysctl: enable coredump for suid binaries 2020-04-07 15:28:46 +02:00
sysusers.d sysusers,tmpfiles: re-create systemd-network, systemd-resolve and systemd-timesync 2018-07-16 17:11:50 +02:00
test nspawn: mount os-release in two steps to make it read-only 2020-07-16 09:59:59 +01:00
tmpfiles.d tmpfiles: don't complain if we can't enable pstore in containers 2020-05-25 16:43:35 +02:00
tools hwdb/autosuspend: add missing parenthesis 2020-07-16 18:06:35 +02:00
travis-ci coverity: install systemd 2020-07-12 22:26:19 +00:00
units build: skip installation of 2 files if feature is disabled 2020-07-18 13:50:39 +09:00
xorg scripts: use 4 space indentation 2019-04-12 08:30:31 +02:00
.clang-format clang-format: set Break afer enum to false 2020-07-19 15:44:04 +02:00
.ctags editors: Prevent ctags from following symlinks 2019-02-15 11:01:20 -08:00
.dir-locals.el scripts: use 4 space indentation 2019-04-12 08:30:31 +02:00
.editorconfig editorconfig: add man configuration 2020-05-26 15:37:05 +02:00
.gitattributes git: indicate that tabs are never OK in the systemd tree 2013-10-30 02:25:38 +01:00
.gitignore gitignore: ignore mypy cache 2020-05-30 11:40:53 +02:00
.lgtm.yml lgtm: drop the TMPDIR/meson workaround 2020-03-03 20:27:42 +01:00
.mailmap NEWS: update contributors list for v246-rc 2020-07-08 17:33:46 +02:00
.travis.yml coverity: switch back to Fedora 31 2020-07-12 22:00:16 +00:00
.vimrc scripts: use 4 space indentation 2019-04-12 08:30:31 +02:00
.ycm_extra_conf.py ycm: add doc string for all the functions in configuration file 2017-11-29 13:21:49 -07:00
LICENSE.GPL2 relicense to LGPLv2.1 (with exceptions) 2012-04-12 00:24:39 +02:00
LICENSE.LGPL2.1 licence: remove references to old FSF address 2012-12-17 11:41:31 +01:00
Makefile build-sys: Fix Makefile wrapper for install target (#6548) 2017-08-07 11:29:20 +02:00
NEWS NEWS: mention source mode for MACVLAN or MACVTAP 2020-07-12 11:57:53 +02:00
README nss-mymachines: drop support for UID/GID resolving 2020-07-14 17:08:12 +02:00
README.md README: add reference to systemd.io 2020-06-16 13:34:04 +02:00
TODO update TODO 2020-07-15 17:45:22 +02:00
azure-pipelines.yml Free up some resources on Azure Pipelines 2019-07-17 13:28:38 +09:00
configure treewide: more portable bash shebangs 2020-03-05 17:27:07 +01:00
meson.build build: skip installation of 2 files if feature is disabled 2020-07-18 13:50:39 +09:00
meson_options.txt build-sys: add libfido2 as optional dependency 2020-07-01 11:17:28 +02:00
mkosi.build mkosi: Unify environment for unit tests 2020-04-22 10:35:12 +02:00
mkosi.default mkosi: create .mkosi directory 2016-10-06 11:53:58 -04:00
zanata.xml po: add basic fedora.zanata.org configuration 2018-02-19 13:56:57 +01:00

README.md

Systemd

System and Service Manager

Count of open issues over time Count of open pull requests over time Semaphore CI Build Status
Coverity Scan Status
OSS-Fuzz Status
CIFuzz
CII Best Practices
Travis CI Build Status
Language Grade: C/C++
CentOS CI Build Status
Build Status
Fossies codespell report
Packaging status

Details

Most documentation is available on systemd's web site.

Assorted, older, general information about systemd can be found in the systemd Wiki.

Information about build requirements is provided in the README file.

Consult our NEWS file for information about what's new in the most recent systemd versions.

Please see the Hacking guide for information on how to hack on systemd and test your modifications.

Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.

When preparing patches for systemd, please follow our Coding Style Guidelines.

If you are looking for support, please contact our mailing list or join our IRC channel.

Stable branches with backported patches are available in the stable repo.