Merge remote-tracking branch 'up/master' into master-riscv64

Signed-off-by: David Abdurachmanov <david.abdurachmanov@sifive.com>
This commit is contained in:
David Abdurachmanov 2019-11-08 07:50:13 +02:00
commit 0a74459811
Signed by: davidlt
GPG Key ID: 8B7F1DA0E2C9FDBB
3 changed files with 126 additions and 9 deletions

104
13792.patch Normal file
View File

@ -0,0 +1,104 @@
From 8af4c8abfb59ab66f1f5a34f0eac1342e6f0c7e5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Thu, 17 Oct 2019 12:37:12 +0200
Subject: [PATCH] udev: tag any display devices as master-of-seat when
nomodeset is used
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Fixes #13773. See also https://bugzilla.redhat.com/show_bug.cgi?id=1728240,
https://github.com/sddm/sddm/issues/1204.
When nomodeset is used on the kernel command line, there is no graphics
device that the kernel knows, so we don't tag anything as master-of-seat,
and seat0 has CanGraphical=no.
$ loginctl seat-status seat0 ; loginctl show-seat seat0
seat0
Devices:
├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
│ input:input0 "Power Button"
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1
│ usb:usb1
│ └─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1/1-1/1-1:1.0/0003:0627:0001.0001/input/input4
│ input:input4 "QEMU QEMU USB Tablet"
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb2
│ usb:usb2
├─/sys/devices/pci0000:00/0000:00:1b.0/sound/card0
│ sound:card0 "Intel"
├─/sys/devices/platform/i8042/serio0/input/input1
│ input:input1 "AT Translated Set 2 keyboard"
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::capslock
│ │ leds:input1::capslock
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::numlock
│ │ leds:input1::numlock
│ └─/sys/devices/platform/i8042/serio0/input/input1/input1::scrolllock
│ leds:input1::scrolllock
└─/sys/devices/platform/i8042/serio1/input/input3
input:input3 "ImExPS/2 Generic Explorer Mouse"
Id=seat0
CanMultiSession=yes
CanTTY=yes
CanGraphical=no
Sessions=
IdleHint=yes
IdleSinceHint=0
IdleSinceHintMonotonic=0
Let's tag the PCI device with "master-of-seat", so we get CanGraphical=yes, and "seat",
so it is show as part of the seat:
[fedora@f31-bios ~]$ loginctl seat-status seat0 ; loginctl show-seat seat0
seat0
Devices:
├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
│ input:input0 "Power Button"
├─/sys/devices/pci0000:00/0000:00:01.0
│ [MASTER] pci:0000:00:01.0
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1
│ usb:usb1
│ └─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1/1-1/1-1:1.0/0003:0627:0001.0001/input/input4
│ input:input4 "QEMU QEMU USB Tablet"
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb2
│ usb:usb2
├─/sys/devices/pci0000:00/0000:00:1b.0/sound/card0
│ sound:card0 "Intel"
├─/sys/devices/platform/i8042/serio0/input/input1
│ input:input1 "AT Translated Set 2 keyboard"
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::capslock
│ │ leds:input1::capslock
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::numlock
│ │ leds:input1::numlock
│ └─/sys/devices/platform/i8042/serio0/input/input1/input1::scrolllock
│ leds:input1::scrolllock
└─/sys/devices/platform/i8042/serio1/input/input3
input:input3 "ImExPS/2 Generic Explorer Mouse"
Id=seat0
CanMultiSession=yes
CanTTY=yes
CanGraphical=yes
Sessions=
IdleHint=yes
IdleSinceHint=0
IdleSinceHintMonotonic=0
---
src/login/71-seat.rules.in | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/login/71-seat.rules.in b/src/login/71-seat.rules.in
index 6010f048aef..2bbd18363e6 100644
--- a/src/login/71-seat.rules.in
+++ b/src/login/71-seat.rules.in
@@ -24,6 +24,11 @@ SUBSYSTEM=="graphics", KERNEL=="fb[0-9]", DRIVERS=="hyperv_fb", TAG+="master-of-
# Allow efifb / uvesafb to be a master if KMS is disabled
SUBSYSTEM=="graphics", KERNEL=="fb[0-9]", IMPORT{cmdline}="nomodeset", TAG+="master-of-seat"
+# Allow any PCI graphics device to be a master and synthesize a seat if KMS
+# is disabled and the kernel doesn't have a driver that would work with this device.
+SUBSYSTEM=="pci", ENV{ID_PCI_CLASS_FROM_DATABASE}=="Display controller", \
+ ENV{DRIVER}=="", IMPORT{cmdline}="nomodeset", TAG+="seat", TAG+="master-of-seat"
+
SUBSYSTEM=="drm", KERNEL=="card[0-9]*", TAG+="seat", TAG+="master-of-seat"
SUBSYSTEM=="usb", ATTR{bDeviceClass}=="09", TAG+="seat"

View File

@ -1 +1 @@
SHA512 (systemd-fab6f01.tar.gz) = 95f5493271969d8446d1bac54ee60170518f23b09c3ed0142eb4dd6b779a664980f926e770dad097f342995bc47865b77cba0ff12ee268a1c5119b12bbf90f77
SHA512 (systemd-ef67743.tar.gz) = 9e905ef4f310f5cbd739f15d51e8c500b0e6ce2fbd2ad33b6568e06212ecfb5bba1347754c00b37d30a5b65cd2432d99aef87ebbafa1a94b4185d773f4ce4987

View File

@ -1,4 +1,4 @@
%global commit fab6f010ac6c3bc93a10868de722d7c8c3622eb9
%global commit ef677436aa203c24816021dd698b57f219f0ff64
%{?commit:%global shortcommit %(c=%{commit}; echo ${c:0:7})}
%global stable 1
@ -15,7 +15,7 @@
Name: systemd
Url: https://www.freedesktop.org/wiki/Software/systemd
Version: 243
Release: 2%{?commit:.git%{shortcommit}}.2.riscv64%{?dist}
Release: 4%{?commit:.git%{shortcommit}}.0.riscv64%{?dist}
# For a breakdown of the licensing, see README
License: LGPLv2+ and MIT and GPLv2+
Summary: System and Service Manager
@ -57,6 +57,11 @@ Patch0001: https://github.com/keszybz/systemd/commit/464a73411c13596a130a7a
Patch0002: 0002-Revert-units-set-NoNewPrivileges-for-all-long-runnin.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1728240
# https://github.com/systemd/systemd/issues/13773
# https://github.com/systemd/systemd/pull/13792
Patch0003: 13792.patch
Patch0998: 0998-resolved-create-etc-resolv.conf-symlink-at-runtime.patch
#Patch0040: systemd-seccomp-riscv64.patch
@ -198,8 +203,11 @@ Summary: Macros that define paths and scriptlets related to systemd
BuildArch: noarch
%description rpm-macros
Just the definitions of rpm macros. Use %%{?systemd_requires} in the
binary packages that use any scriptlets from this package.
Just the definitions of rpm macros.
See
https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_systemd
for information how to use those macros.
%package devel
Summary: Development headers for systemd
@ -707,12 +715,17 @@ fi
%files tests -f .file-list-tests
%changelog
* Sat Sep 28 2019 David Abdurachmanov <david.abdurachmanov@sifive.com> - 243-2.gitfab6f01.2.riscv64
* Fri Nov 08 2019 David Abdurachmanov <david.abdurachmanov@sifive.com> - 243-4.gitef67743.0.riscv64
- Disable SECCOMP until the test can pass
* Fri Sep 27 2019 David Abdurachmanov <david.abdurachmanov@sifive.com> - 243-2.gitfab6f01.1.riscv64
- Add SECCOMP support for RISC-V 64-bit (riscv64)
* Fri Oct 18 2019 Adam Williamson <awilliam@redhat.com> - 243-4.gitef67743
- Backport PR #13792 to fix nomodeset+BIOS CanGraphical bug (#1728240)
* Thu Oct 10 2019 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 243-3.gitef67743
- Various minor documentation and error message cleanups
- Do not use cgroup v1 hierarchy in nspawn on groups v2 (#1756143)
* Sat Sep 21 2019 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 243-2.gitfab6f01
- Backport a bunch of patches (memory access issues, improvements to error
reporting and handling in networkd, some misleading man page contents #1751363)
@ -740,7 +753,7 @@ fi
- Update to latest pre-release. Fixes #1740113, #1717712.
- The default scheduler for disks is set to BFQ (1738828)
- The default cgroup hierarchy is set to unified (cgroups v2) (#1732114).
Use systemd.unified-cgroup-hierachy=0 on the kernel command line to revert.
Use systemd.unified-cgroup-hierarchy=0 on the kernel command line to revert.
See https://fedoraproject.org/wiki/Changes/CGroupsV2.
* Wed Aug 07 2019 Adam Williamson <awilliam@redhat.com> - 243~rc1-2