Bug 2300176 - SELinux is preventing /usr/bin/kwin_wayland from read, write access on the chr_file udmabuf.
Summary: SELinux is preventing /usr/bin/kwin_wayland from read, write access on the ch...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: rawhide
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Zdenek Pytela
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: abrt_hash:7c43b6294bd33084dd43110e940...
: 2300320 2300712 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2024-07-27 02:41 UTC by Matt Fagnani
Modified: 2024-08-07 10:13 UTC (History)
10 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2024-08-07 10:13:24 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
File: description (2.43 KB, text/plain)
2024-07-27 02:41 UTC, Matt Fagnani
no flags Details
File: os_info (735 bytes, text/plain)
2024-07-27 02:41 UTC, Matt Fagnani
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Github fedora-selinux selinux-policy pull 2270 0 None open Allow xdm_t read and write the dma device 2024-07-29 14:15:30 UTC

Description Matt Fagnani 2024-07-27 02:41:18 UTC
Description of problem:
I booted the Fedora Rawhide KDE Live image Fedora-KDE-Live-x86_64-Rawhide-20240726.n.0.iso in a QEMU/KVM VM in GNOME Boxes with 3D acceleration disabled, UEFI enabled in a Fedora 40 KDE installation. When I logged out of Plasma in the VM, kwin_wayland, sddm-greeter-qt6, and maliit-keyboard were denied reading and writing to /dev/udmabuf.

Jul 26 22:20:41 sddm-helper-start-wayland[3257]: "Accepting client connections on sockets: QList(\"wayland-0\")\n"
Jul 26 22:20:41 audit[3259]: AVC avc:  denied  { read write } for  pid=3259 comm="kwin_wayland" name="udmabuf" dev="devtmpfs" ino=137 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:dma_device_t:s0 tclass=chr_file permissive=0
Jul 26 22:20:41 audit[3259]: SYSCALL arch=c000003e syscall=257 success=no exit=-13 a0=ffffff9c a1=7f7a170a5213 a2=2 a3=0 items=0 ppid=3257 pid=3259 auid=4294967295 uid=990 gid=988 euid=990 suid=990 fsuid=990 egid=988 sgid=988 fsgid=988 tty=tty1 ses=4294967295 comm="kwin_wayland" exe="/usr/bin/kwin_wayland" subj=system_u:system_r:xdm_t:s0-s0:c0.c1023 key=(null)
Jul 26 22:20:41 audit: PROCTITLE proctitle=2F7573722F62696E2F6B77696E5F7761796C616E64002D2D6E6F2D676C6F62616C2D73686F727463757473002D2D6E6F2D6C6F636B73637265656E002D2D696E7075746D6574686F64006D616C6969742D6B6579626F617264002D2D6C6F63616C6531
Jul 26 22:20:42 audit: BPF prog-id=122 op=LOAD
Jul 26 22:20:42 audit: BPF prog-id=123 op=LOAD
Jul 26 22:20:42 audit: BPF prog-id=124 op=LOAD
Jul 26 22:20:42 systemd[1]: Starting systemd-localed.service - Locale Service...
Jul 26 22:20:42 systemd[1]: Started systemd-localed.service - Locale Service.
Jul 26 22:20:42 audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-localed comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Jul 26 22:20:42 systemd[3238]: Started pipewire.service - PipeWire Multimedia Service.
Jul 26 22:20:42 systemd[3238]: Started wireplumber.service - Multimedia Service Session Manager.
Jul 26 22:20:42 rtkit-daemon[1303]: Successfully made thread 3278 of process 3278 (/usr/bin/pipewire) owned by '990' high priority at nice level -11.
Jul 26 22:20:42 rtkit-daemon[1303]: Successfully made thread 3284 of process 3278 (/usr/bin/pipewire) owned by '990' RT at priority 20.
Jul 26 22:20:42 rtkit-daemon[1303]: Successfully made thread 3281 of process 3281 (/usr/bin/wireplumber) owned by '990' high priority at nice level -11.
Jul 26 22:20:42 rtkit-daemon[1303]: Successfully made thread 3292 of process 3281 (/usr/bin/wireplumber) owned by '990' RT at priority 20.
Jul 26 22:20:42 wireplumber[3281]: spa.bluez5: BlueZ system service is not available
Jul 26 22:20:42 wireplumber[3281]: wp-device: SPA handle 'api.libcamera.enum.manager' could not be loaded; is it installed?
Jul 26 22:20:42 wireplumber[3281]: s-monitors-libcamera: PipeWire's libcamera SPA plugin is missing or broken. Some camera types may not be supported.
Jul 26 22:20:43 systemd[3238]: Started pipewire-pulse.service - PipeWire PulseAudio.
Jul 26 22:20:43 kernel: Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
Jul 26 22:20:43 kernel: Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
Jul 26 22:20:43 kernel: Lockdown: systemd-logind: hibernation is restricted; see man kernel_lockdown.7
Jul 26 22:20:43 rtkit-daemon[1303]: Successfully made thread 3314 of process 3314 (/usr/bin/pipewire) owned by '990' high priority at nice level -11.
Jul 26 22:20:43 sddm-helper-start-wayland[3257]: "libEGL warning: egl: failed to create dri2 screen\n"
Jul 26 22:20:43 sddm-helper-start-wayland[3257]: "libEGL warning: egl: failed to create dri2 screen\n"
Jul 26 22:20:43 rtkit-daemon[1303]: Successfully made thread 3321 of process 3314 (/usr/bin/pipewire) owned by '990' RT at priority 20.
Jul 26 22:20:43 audit[3266]: AVC avc:  denied  { read write } for  pid=3266 comm="sddm-greeter-qt" name="udmabuf" dev="devtmpfs" ino=137 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:dma_device_t:s0 tclass=chr_file permissive=0
Jul 26 22:20:43 audit[3266]: SYSCALL arch=c000003e syscall=257 success=no exit=-13 a0=ffffff9c a1=7f005682675c a2=2 a3=0 items=0 ppid=3257 pid=3266 auid=4294967295 uid=990 gid=988 euid=990 suid=990 fsuid=990 egid=988 sgid=988 fsgid=988 tty=tty1 ses=4294967295 comm="sddm-greeter-qt" exe="/usr/bin/sddm-greeter-qt6" subj=system_u:system_r:xdm_t:s0-s0:c0.c1023 key=(null)
Jul 26 22:20:43 audit: PROCTITLE proctitle=2F7573722F62696E2F7364646D2D677265657465722D717436002D2D736F636B6574002F746D702F7364646D2D2D6C7A647A7445002D2D7468656D65002F7573722F73686172652F7364646D2F7468656D65732F30312D627265657A652D6665646F7261
Jul 26 22:20:43 sddm-helper-start-wayland[3257]: "MESA: error: ZINK: failed to choose pdev\n"
Jul 26 22:20:43 audit[3303]: AVC avc:  denied  { read write } for  pid=3303 comm="maliit-keyboard" name="udmabuf" dev="devtmpfs" ino=137 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:dma_device_t:s0 tclass=chr_file permissive=0
Jul 26 22:20:43 audit[3303]: SYSCALL arch=c000003e syscall=257 success=no exit=-13 a0=ffffff9c a1=7fa6afa2675c a2=2 a3=0 items=0 ppid=3259 pid=3303 auid=4294967295 uid=990 gid=988 euid=990 suid=990 fsuid=990 egid=988 sgid=988 fsgid=988 tty=tty1 ses=4294967295 comm="maliit-keyboard" exe="/usr/bin/maliit-keyboard" subj=system_u:system_r:xdm_t:s0-s0:c0.c1023 key=(null)
Jul 26 22:20:43 audit: PROCTITLE proctitle="/usr/bin/maliit-keyboard"
Jul 26 22:20:43 sddm-helper-start-wayland[3257]: "libEGL warning: egl: failed to create dri2 screen\n"
Jul 26 22:20:43 sddm-helper-start-wayland[3257]: "MESA: error: ZINK: failed to choose pdev\n"
Jul 26 22:20:43 sddm-helper-start-wayland[3257]: "libEGL warning: egl: failed to create dri2 screen\n"
Jul 26 22:20:43 audit[3266]: AVC avc:  denied  { read write } for  pid=3266 comm="sddm-greeter-qt" name="udmabuf" dev="devtmpfs" ino=137 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:dma_device_t:s0 tclass=chr_file permissive=0
Jul 26 22:20:43 audit[3266]: SYSCALL arch=c000003e syscall=257 success=no exit=-13 a0=ffffff9c a1=7f006b0a5213 a2=2 a3=0 items=0 ppid=3257 pid=3266 auid=4294967295 uid=990 gid=988 euid=990 suid=990 fsuid=990 egid=988 sgid=988 fsgid=988 tty=tty1 ses=4294967295 comm="sddm-greeter-qt" exe="/usr/bin/sddm-greeter-qt6" subj=system_u:system_r:xdm_t:s0-s0:c0.c1023 key=(null)
Jul 26 22:20:43 audit: PROCTITLE proctitle=2F7573722F62696E2F7364646D2D677265657465722D717436002D2D736F636B6574002F746D702F7364646D2D2D6C7A647A7445002D2D7468656D65002F7573722F73686172652F7364646D2F7468656D65732F30312D627265657A652D6665646F7261
Jul 26 22:20:43 audit[3303]: AVC avc:  denied  { read write } for  pid=3303 comm="maliit-keyboard" name="udmabuf" dev="devtmpfs" ino=137 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:dma_device_t:s0 tclass=chr_file permissive=0
Jul 26 22:20:43 audit[3303]: SYSCALL arch=c000003e syscall=257 success=no exit=-13 a0=ffffff9c a1=7fa6b70a5213 a2=2 a3=0 items=0 ppid=3259 pid=3303 auid=4294967295 uid=990 gid=988 euid=990 suid=990 fsuid=990 egid=988 sgid=988 fsgid=988 tty=tty1 ses=4294967295 comm="maliit-keyboard" exe="/usr/bin/maliit-keyboard" subj=system_u:system_r:xdm_t:s0-s0:c0.c1023 key=(null)
Jul 26 22:20:43 audit: PROCTITLE proctitle="/usr/bin/maliit-keyboard"
Jul 26 22:20:43 sddm-greeter-qt6[3266]: Loading file:///usr/share/sddm/themes/01-breeze-fedora/Main.qml...

These denials happened 2/2 times I logged out of Plasma in the VM. sddm on Wayland uses kwin_wayland as its compositor.
SELinux is preventing /usr/bin/kwin_wayland from read, write access on the chr_file udmabuf.

*****  Plugin catchall (100. confidence) suggests   **************************

If you believe that kwin_wayland should be allowed read write access on the udmabuf chr_file by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# ausearch -c 'kwin_wayland' --raw | audit2allow -M my-kwinwayland
# semodule -X 300 -i my-kwinwayland.pp

Additional Information:
Source Context                system_u:system_r:xdm_t:s0-s0:c0.c1023
Target Context                system_u:object_r:dma_device_t:s0
Target Objects                udmabuf [ chr_file ]
Source                        kwin_wayland
Source Path                   /usr/bin/kwin_wayland
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           maliit-keyboard-2.3.1-8.fc41.x86_64
Target RPM Packages           
SELinux Policy RPM            selinux-policy-targeted-41.11-1.fc41.noarch
Local Policy RPM              selinux-policy-targeted-41.11-1.fc41.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 6.11.0-
                              0.rc0.20240725gitc33ffdb70cc6.13.fc41.x86_64 #1
                              SMP PREEMPT_DYNAMIC Thu Jul 25 15:27:56 UTC 2024
                              x86_64
Alert Count                   5
First Seen                    2024-07-26 22:29:26 EDT
Last Seen                     2024-07-26 22:29:27 EDT
Local ID                      c062ffe0-7794-4235-a1fa-acc42d3327d4

Raw Audit Messages
type=AVC msg=audit(1722047367.895:522): avc:  denied  { read write } for  pid=5199 comm="maliit-keyboard" name="udmabuf" dev="devtmpfs" ino=137 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:dma_device_t:s0 tclass=chr_file permissive=0


type=SYSCALL msg=audit(1722047367.895:522): arch=x86_64 syscall=openat success=no exit=EACCES a0=ffffff9c a1=7f2f4f0a5213 a2=2 a3=0 items=0 ppid=5160 pid=5199 auid=4294967295 uid=990 gid=988 euid=990 suid=990 fsuid=990 egid=988 sgid=988 fsgid=988 tty=tty1 ses=4294967295 comm=maliit-keyboard exe=/usr/bin/maliit-keyboard subj=system_u:system_r:xdm_t:s0-s0:c0.c1023 key=(null)

Hash: kwin_wayland,xdm_t,dma_device_t,chr_file,read,write

Version-Release number of selected component:
selinux-policy-targeted-41.11-1.fc41.noarch

Additional info:
reporter:       libreport-2.17.15
reason:         SELinux is preventing /usr/bin/kwin_wayland from read, write access on the chr_file udmabuf.
package:        selinux-policy-targeted-41.11-1.fc41.noarch
component:      selinux-policy
hashmarkername: setroubleshoot
type:           libreport
kernel:         6.11.0-0.rc0.20240725gitc33ffdb70cc6.13.fc41.x86_64
component:      selinux-policy

Comment 1 Matt Fagnani 2024-07-27 02:41:20 UTC
Created attachment 2040601 [details]
File: description

Comment 2 Matt Fagnani 2024-07-27 02:41:21 UTC
Created attachment 2040602 [details]
File: os_info

Comment 3 Zdenek Pytela 2024-07-29 15:35:21 UTC
*** Bug 2300320 has been marked as a duplicate of this bug. ***

Comment 4 Zdenek Pytela 2024-07-29 18:44:13 UTC
*** Bug 2300712 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.