LINUX.ORG.RU

Консоль ломает иксы на втором рабочем месте

 ,


0

2

Мультисит с двумя видеокартами. С момента включения компьютера все отображается на первом дисплее, на втором нет сигнала. После загрузки драйвера второй карты консольный вывод на первый дисплей прекращается, отображение консолей «перебрасывается» на второй. Потом стартует dm, который запускает Х-сервера: первый на seat0 с параметром «vt7», второй на seat1 с "-sharevts -novtswitch". Запускаются нормально, но при любом переключении виртуальных терминалов начинаются проблемы.

  • Сервер на seat0 запущен без novtswitch, но при нажатии ctrl+alt+fX консоли переключаются на втором дисплее (первый тоже переводится в текстовый, если это не консоль его Х-сервера, но на нем отображается ни на что не реагирующий текст, оставшийся на момент загрузки драйвера второй карты).
  • Текстовые консоли на seat1 реагируют только на клавиатуру seat0, при этом на нем остается иксовый курсор мыши, реагирующий на виджеты «скрытых» консолью запущенных под иксами программ - видимо, второй Х-сервер, запущенный с novtswitch, держит свои устройства ввода и частичный(?) контроль над кадровым буфером.
  • Что самое неприятное - обратное переключение к vt, на котором запущен Х-сервер seat1, не приводит к восстановлению его картинки. Так как при выходе пользователя seat0 на нем происходит переключение терминалов, то второе рабочее место в результате делается... Нерабочим)

Может, как-то можно избежать «перебрасывания» консолей на дисплей второй видеокарты? Или вылечить проблему с невосстанавливающейся после переключения в консоль и обратно картинке второго сервера? Обе карты nvidia, первая работает под проприетарным драйвером, вторая - под nouveau.

Пробовал даже выпилить CONFIG_VT, но это все еще порождает слишком много сложностей (fblog до сих пор не в mainline kernel, в умеющих хоть какой-то мультисит DM'ах жестко прошита команда запуска первого Х-сервера с vt, и сами иксы нормально без vt пока что не запускаются)

★★

Удалось решить проблему посредством выпила CONFIG_FRAMEBUFFER_CONSOLE (ее можно выключить только при CONFIG_EMBEDDED=y). Теперь консоли остаются на первом дисплее (VGA_CONSOLE, уживающийся с проприетарным драйвером nvidia), на втором дисплее только иксы, никак не реагирующие на переключение vt на seat0.

shatsky ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.