[Intel-gfx] [PATCH 3/3] xf86-video-intel: Add a helper for setting backlight without root rights

Hans de Goede hdegoede at redhat.com
Sat Feb 15 22:37:29 CET 2014


Hi,

On 02/15/2014 12:52 PM, Chris Wilson wrote:
> On Sat, Feb 15, 2014 at 09:48:14AM +0100, Hans de Goede wrote:
>> Hi,
>>
>> On 02/15/2014 12:54 AM, Chris Wilson wrote:
>>> On Sat, Feb 15, 2014 at 12:02:37AM +0100, Hans de Goede wrote:
>>>> Once the xserver stops running as root on kms capabable systems, we will need
>>>> some other way to access the backlight.
>>>>
>>>> The approach taken in this patch leaves most of the heavy lifting (wrt
>>>> doing everything suid root safe) to pkexec, as is done in ie
>>>> gnome-settings-daemon, which controls the backlight directly on ati and
>>>> nouveau cards.
>>>>
>>>> This commit adds src/backlight.h and src/backlight.c as a place to share common
>>>> backlight code, in the future most of the duplicate backlight code inside
>>>> src/sna/sna_display.c and src/uxa/intel_display.c should be moved there.
>>>
>>> Right, I agree and think we can make that transition now. It should not
>>> result in much more code than motion than introducing the helper.
>>> Importantly, I think it will also clarify the tests we require before
>>> declaring the backlight functional.
>>
>> So you would like me to unify things before adding the helper I assume,
>> so first a unifying patch introducing backlight.[c,h] and then a patch adding
>> the helper on top ?
> 
> No, I've just moved some code around in your patch and reduced a little
> more duplication. I'm happy with it all now, except for one minor
> niggle..

Nice, thanks for working on this! I'll run some tests with your modified code
coming Monday to ensure that everything works as it should with pkexec and
the xserver running as a regular user.

> How do you make pkexec work? On my f20, it just hangs in
> polkit_authority_check_authorization_sync()

Do you have selinux in enforcing mode ? That is know to cause this issue.
I need to file selinux policy bugs for both this as well as for Xorg's inability
to talk to systemd-logind when selinux is in enforcing mode. Doing:
setenforce 0 as root may help.

Regards,

Hans



More information about the Intel-gfx mailing list