Я не уверен, но похоже, что вы говорите о вырезанных буферах.
Для получения дополнительной информации о том, как работает буфер обмена и буферы вырезания, ознакомьтесь с этими ссылками:
краткая спецификация буфера обмена freedesktop ,
Руководство по соглашениям о взаимодействии между клиентами
Выбор X, буферы вырезания и кольца уничтожения .
Удачного рытья!
Это не решение, а возможный обходной путь:
$ env DISPLAY=:0 xset dpms force off
$ env DISPLAY=:0 xset dpms force on
Описанный выше метод взят из раздела вопросов и ответов AU под названием:Монитор DisplayPort не обнаруживается при выключении и повторном включении имелись и другие решения аналогичной проблемы.
Ответы на вопросы U&L под названием:Как определить, подключен или отключен монитор? У есть метод опроса, который может помочь и здесь.
Это не совсем ответ на ваш вопрос как таковой, но, возможно, это технически правильный ответ, поэтому я воспользуюсь преимуществами более удобного форматирования ответов, так что это не 30 стена -из -текста Комментарии.
Вы вряд ли получите ответ по SO/SE, потому что просто не хватает -знаний по предметной области. Гораздо лучше поговорить напрямую с разработчиками драйверов ядра i915.
https://01.org/linuxgraphics/documentation/how-report-bugsсодержит очень исчерпывающие инструкции о том, как сделать это организованно.
То, как вы сформулировали свой отчет об ошибке, подразумевает, что/sys/class/drm/card0-DP-2/status
существует, когда вы подключаете кабель DisplayPort после загрузки, но не существует, когда кабель и экран не подключены. Что ж, все, что связано с /sys/*
, определенно не связано с X11 -, и drm
в пути абсолютно подтверждает, что вы хотите следовать разделу1.1 - DRM Kernel
из приведенной выше ссылки.
Я ознакомился с деталями, запрошенными в этом разделе, и вполне уверен, что невозможные -для -биты понимания на самом деле не нужны. При этом информация о ядре и дистрибутиве, полная dmesg
после перезагрузки с drm.debug=0xe
и т. д. — все это очень хорошие идеи.
Очевидно, что два dmesg
s были бы здесь логически уместны; один из багажника без разъема, а другой с. Может быть очень полезно указать точную или приблизительную точку, в которую вы на самом деле подключаете разъем.
5 минут размышлений привели к подходящему хакерскому -, но -успешному способу легко комментировать:
script -c 'dmesg -w | cat' dmesg.txt
запустит dmesg -w
, а также позволит вам вводить строки текста непосредственно в терминал для добавления аннотаций , и вы можете ^C
, когда закончите сбор информации dmesg.(dmesg -w | cat
короче dmesg -w --color=never
.)
Одна, возможно, -маловероятная вещь, просто на всякий случай :это когда-нибудь работало? Если да, то не помните, в какое время? Если да, попробуйте установить старые версии дистрибутивов, которые вы использовали в тех точках, и если они работают, соберите версии ядра!
Кроме того... вы можете не захотеть это слышать, но, как всегда, нельзя быть на 100% уверенным в том, что неохотное получение последней работающей версии ядра не исправит все волшебным образом.:)
К счастью, это гораздо менее страшно, чем вы могли бы опасаться:https://cgit.freedesktop.org/drm-tip/— это полный клон ядра Linux с уже свернутыми подсказками drm -из -древовидных патчей. Насколько я могу судить, просто клонируйте и соберите это, и вы должны быть готовы к работе.
...При этом из соображений осторожности вы можете загрузить последнюю версию ядра и сначала получить тот известный -, а затем скопировать .config
в дерево drm-tip
. Если вы не сделаете этого в первую очередь, и все взорвется вбок, проверка того, что вы можете собрать и загрузить основное ядро, может быть хорошей первой проверкой -подавления -работоспособности.
Вот нужная страница багзиллы:https://bugs.freedesktop.org/enter_bug.cgi?product=DRI
На самом деле, это почти наверняка покажет вам окно входа в систему; в этом случае вам сначала понадобится этот URL:https://bugs.freedesktop.org/createaccount.cgi
Наконец, если вы хотите задать вопросы,https://01.org/linuxgraphics/community/kernelупоминает #gfx -информацию о freenode.
FWIW, то, что я описал выше, является идеальным набором шагов. Вы можете открыть предварительную ошибку на freedesktop.org, прежде чем, например, пойти и выполнить пересборку ядра, чтобы узнать, нет ли других шагов отладки, которые вы могли бы попробовать.(На странице сообщения об ошибке в разделе версии указан только "drm git", поэтому они действительно хотят, чтобы вы использовали версию git... хех)
На самом деле у меня есть хороший вопрос для канала IRC. -Я перечислил репозиторий drm-tip
git, потому что он упоминается в документации, но есть также репозиторий drm-intel
, и я не знаю, что это актуальность есть. Он также выглядит как дерево ядра и тоже обновляется каждые несколько минут.