hal version: 0.5.12~rc1
Ubuntu Jaunty (development release)
In Ubuntu performance of 3D graphics, like glxgears, has dropped significantly with libdrm 2.4.1. Investigation showed I did not have rw access to the DRM device /dev/dri/card0. Access rights were crw-rw----, owner root, group video.
I am not a member of the video group.
However, HAL is supposed to set an ACL on the DRM device. getfacl showed this was not done successfully.
$ sudo getfacl /dev/dri/card0
getfacl: Removing leading '/' from absolute path names
# file: dev/dri/card0
# owner: root
# group: video
user::rw-
group::rw-
other::---
Policy-kit showed console and active console should get access to the DRM device.
Console-kit showed a valid session for me.
Attached is the output of hal-find-by-capability --capability drm | xargs hal-device
(I found the same lines on git).
However, hal-device does not list the property input.device, so apparently the key access_control.file could not be set.
solved the problem for me. Now the ACL was applied and performance was back to normal:
$ sudo getfacl /dev/dri/card0
getfacl: Removing leading '/' from absolute path names
# file: dev/dri/card0
# owner: root
# group: video
user::rw-
user:albert:rw-
group::rw-
mask::rw-
other::---
I have an Intel GM965 Integrated Graphics Controller, pci-id 8086:2a02.
Kernel is 2.6.28-2-generic (based on 2.6.28-rc7). I got the same results with an older kernel, 2.6.27-7-generic.
NB: libdrm 2.4.1 is the first version in Ubuntu using udev. Older versions set permissions on /dev/dri/card0 in a different way.
Created an attachment (id=20903)
hal-device output
This bug was originally reported in Ubuntu at launchpad: https:/ /bugs.launchpad .net/ubuntu/ +source/ hal/+bug/ 306014
hal version: 0.5.12~rc1
Ubuntu Jaunty (development release)
In Ubuntu performance of 3D graphics, like glxgears, has dropped significantly with libdrm 2.4.1. Investigation showed I did not have rw access to the DRM device /dev/dri/card0. Access rights were crw-rw----, owner root, group video.
I am not a member of the video group.
However, HAL is supposed to set an ACL on the DRM device. getfacl showed this was not done successfully.
$ sudo getfacl /dev/dri/card0
getfacl: Removing leading '/' from absolute path names
# file: dev/dri/card0
# owner: root
# group: video
user::rw-
group::rw-
other::---
Policy-kit showed console and active console should get access to the DRM device.
Console-kit showed a valid session for me.
Attached is the output of hal-find- by-capability --capability drm | xargs hal-device
/usr/share/ hal/fdi/ policy/ 10osvendor/ 20-acl- management. fdi contains: capabilities" contains="drm"> capabilities" type="strlist" >access_ control< /append> control. file" type="copy_ property" >input. device< /merge> control. type" type="string" >video< /merge>
<match key="info.
<append key="info.
<merge key="access_
<merge key="access_
</match>
(I found the same lines on git).
However, hal-device does not list the property input.device, so apparently the key access_control.file could not be set.
Replacing: control. file" type="copy_ property" >input. device< /merge> control. file" type="copy_ property" >linux. device_ file</merge>
<merge key="access_
by:
<merge key="access_
solved the problem for me. Now the ACL was applied and performance was back to normal:
$ sudo getfacl /dev/dri/card0
getfacl: Removing leading '/' from absolute path names
# file: dev/dri/card0
# owner: root
# group: video
user::rw-
user:albert:rw-
group::rw-
mask::rw-
other::---
I have an Intel GM965 Integrated Graphics Controller, pci-id 8086:2a02.
Kernel is 2.6.28-2-generic (based on 2.6.28-rc7). I got the same results with an older kernel, 2.6.27-7-generic.
NB: libdrm 2.4.1 is the first version in Ubuntu using udev. Older versions set permissions on /dev/dri/card0 in a different way.