[Intel-gfx] drm i915 weirdness with /sys/class/drm/card0*/status

Lennart Poettering lennart at poettering.net
Tue Jun 16 04:22:00 PDT 2015


B1;4002;0cOn Tue, 16.06.15 12:25, Daniel Vetter (daniel at ffwll.ch) wrote:

> > The biggest change here is 4.1 stopped forcing the probe from sysfs
> > precisely because systemd was hitting them so often for illogical
> > reasons (being docked depends on having the lid open and an
> > external display connected!). To force the probe, you must do
> > 	$ echo detect > /sys/class/drm/*/status
> 
> Oh right I've forgotten about that one. For reference the commit is:
> 
> commit c484f02d0f02fbbfc6decc945a69aae011041a27
> Author: Chris Wilson <chris at chris-wilson.co.uk>
> Date:   Fri Mar 6 12:36:42 2015 +0000
> 
>     drm: Lighten sysfs connector 'status'
>     
>     Since the beginning, sysfs/connector/status has done a heavyweight
>     detection of the current connector status. But no user, such as upowerd
>     or logind, has ever desired to initiate a probe. Move the probing into a
>     new attribute so that existing readers get the behaviour they desire.
>     
>     v2: David Herrmann suggested using "echo detect > /sys/.../status" to
>     trigger the probing, which is a fine idea. This extends that to also
>     allow the user to apply the force detection overrides at
>     runtime.

But what does that actually mean? should logind ever echo "detect"
itself into the file? Should it follow uevents for the files? How
should treat this file?

>     v3: Now with airlied's email address fixed! Requires sysfs_streq()
>     
>     Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
>     Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
>     Cc: David Herrmann <dh.herrmann at gmail.com>
>     Cc: Dave Airlie <airlied at redhat.com>
>     Cc: Alex Deucher <alexdeucher at gmail.com>
>     Reviewed-by: David Herrmann <dh.herrmann at gmail.com>
>     Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
>     Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> 
> Even reviewed by systemd developer!
> 
> btw small complaint about looking connector status: Just because something
> is plugged in doesn't mean it's actually enabled. Hence checking for
> connector status to decide at the system level whether lid close should
> suspend or not doesn't make a whole lot of sense imo. But that's just a
> rant aside ;-)

Well, but things are close enough, closing the lid, plugging in a
second display and then leaving it off and expecting things to suspend
now is probably a very exceptional case... 

That said, how would I check if the connector is both plugged *and*
enabled? If there's a sane sysfs API for that, I'd be happy to extend
the check for you.

Lennart

-- 
Lennart Poettering, Red Hat


More information about the Intel-gfx mailing list