* Cannot start a secondary Xserver with resolution 6480x3840
@ 2019-01-21 14:42 Janek Kozicki
[not found] ` <20190121154238.3ffb6eb0-EEQwe9FboP/QT0dZR+AlfA@public.gmane.org>
0 siblings, 1 reply; 6+ messages in thread
From: Janek Kozicki @ 2019-01-21 14:42 UTC (permalink / raw)
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
Hi,
In my workflow I am using several separate xservers. One for work,
another for research and so on. Each of them has a separate user
account, and they all belong to the same (main) group called janek.
I've been using nvidia for years, but about 2 years ago some super
annoying bug appeared in nvidia, namely that switching between
virtual terminals sporadically causes nvidia_modeset to freeze all
virtual terminals. Then I can only ssh remotely to investigate the
problem. And rmmod nvidia would not work, or anything else
whatsovever. The only way to unlock virtual terminals is a reboot,
which I hate, because I often have calculations running for months.
So I am hoping that noveau will work now! Alas it is not. When I
configure xrandr to use all my LCD screens in ~/.xsession using this
command line:
xrandr --output HDMI-1 --off --output DP-1 --mode 3840x2160 --pos 2160x0 --rotate left --output DVI-D-1 --off --output DP-2 --mode 3840x2160 --pos 0x0 --rotate left --output DP-3 --mode 3840x2160 --pos 4320x0 --rotate left
then only single Xserver can start up. Other Xservers have a segfault
upon startup. If I use only one LCD screen then I can start multiple
Xservers, but that is obvioulsy a waste of two screens! :)
The crash log is following:
[ 963.513] (EE)
[ 963.513] (EE) Backtrace:
[ 963.513] (EE) 0: /usr/lib/xorg/Xorg (xorg_backtrace+0x4a) [0x5566a8b8466a]
[ 963.513] (EE) 1: /usr/lib/xorg/Xorg (0x5566a89cb000+0x1bd3f9) [0x5566a8b883f9]
[ 963.513] (EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7fc673b06000+0x110c0) [0x7fc673b170c0]
[ 963.513] (EE) 3: /lib/x86_64-linux-gnu/libc.so.6 (0x7fc673767000+0x83f74) [0x7fc6737eaf74]
[ 963.513] (EE) 4: /usr/lib/xorg/modules/libshadow.so (shadowUpdatePacked+0x1da) [0x7fc6690dab7a]
[ 963.513] (EE) 5: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0x8ecb) [0x7fc66f45cecb]
[ 963.513] (EE) 6: /usr/lib/xorg/modules/libshadow.so (0x7fc6690d8000+0x15a9) [0x7fc6690d95a9]
[ 963.513] (EE) 7: /usr/lib/xorg/modules/libshadow.so (0x7fc6690d8000+0x1624) [0x7fc6690d9624]
[ 963.513] (EE) 8: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0xa113) [0x7fc66f45e113]
[ 963.513] (EE) 9: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0xa3aa) [0x7fc66f45e3aa]
[ 963.513] (EE) 10: /usr/lib/xorg/Xorg (BlockHandler+0xb1) [0x5566a8a240d1]
[ 963.513] (EE) 11: /usr/lib/xorg/Xorg (WaitForSomething+0x141) [0x5566a8b81f01]
[ 963.513] (EE) 12: /usr/lib/xorg/Xorg (0x5566a89cb000+0x5445a) [0x5566a8a1f45a]
[ 963.513] (EE) 13: /usr/lib/xorg/Xorg (0x5566a89cb000+0x586a8) [0x5566a8a236a8]
[ 963.513] (EE) 14: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf1) [0x7fc6737872e1]
[ 963.513] (EE) 15: /usr/lib/xorg/Xorg (_start+0x2a) [0x5566a8a0d33a]
[ 963.513] (EE)
[ 963.513] (EE) Bus error at address 0x7fc6548a4000
Note: I installed package xserver-xorg-video-nouveau-dbg 1:1.0.13-3,
but this did not help in making above errors more informative.
While in a working Xorg.0.log there is instead a message:
[ 61.898] (II) modeset(0): Allocate new frame buffer 6480x3840 stride
[ 62.021] (II) modeset(0): Disabling kernel dirty updates, not required.
[ 224.753] (II) modeset(0): EDID vendor "DEL", prod id 53380
[ 224.754] (II) modeset(0): Using EDID range info for horizontal sync
[ 224.754] (II) modeset(0): Using EDID range info for vertical refresh
[ 224.754] (II) modeset(0): Printing DDC gathered Modelines:
[ 224.754] (II) modeset(0): Modeline "3840x2160"x0.0 533.25 3840 3888 3920 4000 2160 2163 2168 2222 +hsync -vsync (133.3 kHz eP)
So evidently nouveau cannot allocate another framebuffer with size 6480x3840
I am using devuan ascii with latest linux kernel 4.20.3, which I have just compiled using these commands:
cd /home/deb/linux-image
unxz -c linux-4.20.3.tar.xz | gpg --verify linux-4.20.3.tar.sign -
unp ./linux-4.20.3.tar.xz
cd linux-4.20.3
cp /boot/config-`uname -r` ./.config
make menuconfig
time fakeroot make-kpkg --initrd --append-to-version=-absurd.2 kernel_image kernel_headers -j40
I will be happy to provide more information, just tell me what you need.
can you help me?
--
# Janek Kozicki
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cannot start a secondary Xserver with resolution 6480x3840
[not found] ` <20190121154238.3ffb6eb0-EEQwe9FboP/QT0dZR+AlfA@public.gmane.org>
@ 2019-01-21 15:50 ` Janek Kozicki
2019-01-21 18:50 ` Ilia Mirkin
1 sibling, 0 replies; 6+ messages in thread
From: Janek Kozicki @ 2019-01-21 15:50 UTC (permalink / raw)
To: Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
Hi,
if you need me to file a bug report, then is that a correct place: https://bugs.freedesktop.org/ ?
best regards
Janek Kozicki
> Hi,
>
> xrandr --output HDMI-1 --off --output DP-1 --mode 3840x2160 --pos 2160x0 --rotate left --output DVI-D-1 --off --output DP-2 --mode 3840x2160 --pos 0x0 --rotate left --output DP-3 --mode 3840x2160 --pos 4320x0 --rotate left
>
> The crash log is following:
>
> [ 963.513] (EE)
> [ 963.513] (EE) Backtrace:
> [ 963.513] (EE) 0: /usr/lib/xorg/Xorg (xorg_backtrace+0x4a) [0x5566a8b8466a]
> [ 963.513] (EE) 1: /usr/lib/xorg/Xorg (0x5566a89cb000+0x1bd3f9) [0x5566a8b883f9]
> [ 963.513] (EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7fc673b06000+0x110c0) [0x7fc673b170c0]
> [ 963.513] (EE) 3: /lib/x86_64-linux-gnu/libc.so.6 (0x7fc673767000+0x83f74) [0x7fc6737eaf74]
> [ 963.513] (EE) 4: /usr/lib/xorg/modules/libshadow.so (shadowUpdatePacked+0x1da) [0x7fc6690dab7a]
> [ 963.513] (EE) 5: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0x8ecb) [0x7fc66f45cecb]
> [ 963.513] (EE) 6: /usr/lib/xorg/modules/libshadow.so (0x7fc6690d8000+0x15a9) [0x7fc6690d95a9]
> [ 963.513] (EE) 7: /usr/lib/xorg/modules/libshadow.so (0x7fc6690d8000+0x1624) [0x7fc6690d9624]
> [ 963.513] (EE) 8: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0xa113) [0x7fc66f45e113]
> [ 963.513] (EE) 9: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0xa3aa) [0x7fc66f45e3aa]
> [ 963.513] (EE) 10: /usr/lib/xorg/Xorg (BlockHandler+0xb1) [0x5566a8a240d1]
> [ 963.513] (EE) 11: /usr/lib/xorg/Xorg (WaitForSomething+0x141) [0x5566a8b81f01]
> [ 963.513] (EE) 12: /usr/lib/xorg/Xorg (0x5566a89cb000+0x5445a) [0x5566a8a1f45a]
> [ 963.513] (EE) 13: /usr/lib/xorg/Xorg (0x5566a89cb000+0x586a8) [0x5566a8a236a8]
> [ 963.513] (EE) 14: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf1) [0x7fc6737872e1]
> [ 963.513] (EE) 15: /usr/lib/xorg/Xorg (_start+0x2a) [0x5566a8a0d33a]
> [ 963.513] (EE)
> [ 963.513] (EE) Bus error at address 0x7fc6548a4000
>
> Note: I installed package xserver-xorg-video-nouveau-dbg 1:1.0.13-3,
> but this did not help in making above errors more informative.
>
> While in a working Xorg.0.log there is instead a message:
>
> [ 61.898] (II) modeset(0): Allocate new frame buffer 6480x3840 stride
> [ 62.021] (II) modeset(0): Disabling kernel dirty updates, not required.
> [ 224.753] (II) modeset(0): EDID vendor "DEL", prod id 53380
> [ 224.754] (II) modeset(0): Using EDID range info for horizontal sync
> [ 224.754] (II) modeset(0): Using EDID range info for vertical refresh
> [ 224.754] (II) modeset(0): Printing DDC gathered Modelines:
> [ 224.754] (II) modeset(0): Modeline "3840x2160"x0.0 533.25 3840 3888 3920 4000 2160 2163 2168 2222 +hsync -vsync (133.3 kHz eP)
>
>
> So evidently nouveau cannot allocate another framebuffer with size 6480x3840
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cannot start a secondary Xserver with resolution 6480x3840
[not found] ` <20190121154238.3ffb6eb0-EEQwe9FboP/QT0dZR+AlfA@public.gmane.org>
2019-01-21 15:50 ` Janek Kozicki
@ 2019-01-21 18:50 ` Ilia Mirkin
[not found] ` <CAKb7UviFnvkX7nEvyYikQy3M5jUA9sDbMYaAsJ0w7MqzW=_Y9Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
1 sibling, 1 reply; 6+ messages in thread
From: Ilia Mirkin @ 2019-01-21 18:50 UTC (permalink / raw)
To: Janek Kozicki; +Cc: nouveau
Hi Janek,
A few things...
First off, you're not using the nouveau ddx, you're using the
modesetting ddx. This isn't a problem in itself, but if you're going
to report bugs, you should file them against the proper component.
Secondly, I'm a bit unclear as to what your setup is. A single X
server takes over a whole GPU. Recently "leasing" has been introduced
which enables a drm master to "lease" certain outputs to another
process, but I haven't played much with it. If you want different X
servers for each (or groups of) outputs of a single GPU, then you need
to get leasing going.
I'm not sure as to your precise use-case, but perhaps another option
is to have a single X server with multiple X screens. This can be done
by enabling ZaphodHeads. This was a common way to get a mega-screen
across multiple GPUs prior to output slaving being introduced, there's
a guide here https://nouveau.freedesktop.org/wiki/MultiMonitorDesktop/
.
Lastly, note that no matter how many physical outputs there might be,
Kepler+ only supports 4 CRTC's and earlier gens had 2. That puts a
hw-imposed upper limit on the number of images that can be produced
for these outputs.
Cheers,
-ilia
On Mon, Jan 21, 2019 at 9:42 AM Janek Kozicki
<janek.listy.mailowe@gmail.com> wrote:
>
> Hi,
>
> In my workflow I am using several separate xservers. One for work,
> another for research and so on. Each of them has a separate user
> account, and they all belong to the same (main) group called janek.
>
> I've been using nvidia for years, but about 2 years ago some super
> annoying bug appeared in nvidia, namely that switching between
> virtual terminals sporadically causes nvidia_modeset to freeze all
> virtual terminals. Then I can only ssh remotely to investigate the
> problem. And rmmod nvidia would not work, or anything else
> whatsovever. The only way to unlock virtual terminals is a reboot,
> which I hate, because I often have calculations running for months.
>
> So I am hoping that noveau will work now! Alas it is not. When I
> configure xrandr to use all my LCD screens in ~/.xsession using this
> command line:
>
> xrandr --output HDMI-1 --off --output DP-1 --mode 3840x2160 --pos 2160x0 --rotate left --output DVI-D-1 --off --output DP-2 --mode 3840x2160 --pos 0x0 --rotate left --output DP-3 --mode 3840x2160 --pos 4320x0 --rotate left
>
> then only single Xserver can start up. Other Xservers have a segfault
> upon startup. If I use only one LCD screen then I can start multiple
> Xservers, but that is obvioulsy a waste of two screens! :)
>
> The crash log is following:
>
> [ 963.513] (EE)
> [ 963.513] (EE) Backtrace:
> [ 963.513] (EE) 0: /usr/lib/xorg/Xorg (xorg_backtrace+0x4a) [0x5566a8b8466a]
> [ 963.513] (EE) 1: /usr/lib/xorg/Xorg (0x5566a89cb000+0x1bd3f9) [0x5566a8b883f9]
> [ 963.513] (EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7fc673b06000+0x110c0) [0x7fc673b170c0]
> [ 963.513] (EE) 3: /lib/x86_64-linux-gnu/libc.so.6 (0x7fc673767000+0x83f74) [0x7fc6737eaf74]
> [ 963.513] (EE) 4: /usr/lib/xorg/modules/libshadow.so (shadowUpdatePacked+0x1da) [0x7fc6690dab7a]
> [ 963.513] (EE) 5: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0x8ecb) [0x7fc66f45cecb]
> [ 963.513] (EE) 6: /usr/lib/xorg/modules/libshadow.so (0x7fc6690d8000+0x15a9) [0x7fc6690d95a9]
> [ 963.513] (EE) 7: /usr/lib/xorg/modules/libshadow.so (0x7fc6690d8000+0x1624) [0x7fc6690d9624]
> [ 963.513] (EE) 8: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0xa113) [0x7fc66f45e113]
> [ 963.513] (EE) 9: /usr/lib/xorg/modules/drivers/modesetting_drv.so (0x7fc66f454000+0xa3aa) [0x7fc66f45e3aa]
> [ 963.513] (EE) 10: /usr/lib/xorg/Xorg (BlockHandler+0xb1) [0x5566a8a240d1]
> [ 963.513] (EE) 11: /usr/lib/xorg/Xorg (WaitForSomething+0x141) [0x5566a8b81f01]
> [ 963.513] (EE) 12: /usr/lib/xorg/Xorg (0x5566a89cb000+0x5445a) [0x5566a8a1f45a]
> [ 963.513] (EE) 13: /usr/lib/xorg/Xorg (0x5566a89cb000+0x586a8) [0x5566a8a236a8]
> [ 963.513] (EE) 14: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf1) [0x7fc6737872e1]
> [ 963.513] (EE) 15: /usr/lib/xorg/Xorg (_start+0x2a) [0x5566a8a0d33a]
> [ 963.513] (EE)
> [ 963.513] (EE) Bus error at address 0x7fc6548a4000
>
> Note: I installed package xserver-xorg-video-nouveau-dbg 1:1.0.13-3,
> but this did not help in making above errors more informative.
>
> While in a working Xorg.0.log there is instead a message:
>
> [ 61.898] (II) modeset(0): Allocate new frame buffer 6480x3840 stride
> [ 62.021] (II) modeset(0): Disabling kernel dirty updates, not required.
> [ 224.753] (II) modeset(0): EDID vendor "DEL", prod id 53380
> [ 224.754] (II) modeset(0): Using EDID range info for horizontal sync
> [ 224.754] (II) modeset(0): Using EDID range info for vertical refresh
> [ 224.754] (II) modeset(0): Printing DDC gathered Modelines:
> [ 224.754] (II) modeset(0): Modeline "3840x2160"x0.0 533.25 3840 3888 3920 4000 2160 2163 2168 2222 +hsync -vsync (133.3 kHz eP)
>
>
> So evidently nouveau cannot allocate another framebuffer with size 6480x3840
>
>
> I am using devuan ascii with latest linux kernel 4.20.3, which I have just compiled using these commands:
>
> cd /home/deb/linux-image
> unxz -c linux-4.20.3.tar.xz | gpg --verify linux-4.20.3.tar.sign -
> unp ./linux-4.20.3.tar.xz
> cd linux-4.20.3
> cp /boot/config-`uname -r` ./.config
> make menuconfig
> time fakeroot make-kpkg --initrd --append-to-version=-absurd.2 kernel_image kernel_headers -j40
>
>
> I will be happy to provide more information, just tell me what you need.
>
> can you help me?
> --
> # Janek Kozicki
> _______________________________________________
> Nouveau mailing list
> Nouveau@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/nouveau
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cannot start a secondary Xserver with resolution 6480x3840
[not found] ` <CAKb7UviFnvkX7nEvyYikQy3M5jUA9sDbMYaAsJ0w7MqzW=_Y9Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2019-01-21 19:32 ` Janek Kozicki
[not found] ` <20190121202705.6557b5f7-EEQwe9FboP/QT0dZR+AlfA@public.gmane.org>
0 siblings, 1 reply; 6+ messages in thread
From: Janek Kozicki @ 2019-01-21 19:32 UTC (permalink / raw)
To: nouveau
Uh, I wanted to attach the Xorg.0.log, but I got a reply that it is
too big. How can I send to mailing list with attachments? Or is it
fine to wait for moderator approval?
Hi,
thank you very much for your reply.
I will explain my use case in more detail. First thing is to note that
it worked with nvidia (apart from this annoying system freeze which
happened roughly every three months).
> First off, you're not using the nouveau ddx, you're using the
> modesetting ddx. This isn't a problem in itself, but if you're going
> to report bugs, you should file them against the proper component.
oh, wow. I don't know what is ddx or modesetting ddx. Google tells me
that it is related to intel drivers? But I have nvidia card. And
Xorg.0.log refers to nouveau and nv.
Please provide me some links where I can learn about the difference
between nouveau and ddx.
> Secondly, I'm a bit unclear as to what your setup is. A single X
> server takes over a whole GPU. Recently "leasing" has been introduced
> which enables a drm master to "lease" certain outputs to another
> process, but I haven't played much with it.
I press Ctrl-Alt-F2 to switch to text virtual terminal, there I log
in as user 'research' and type
$ startx -- -nolisten tcp -dpi 100
Thus I start an xserver (owned by user research) which uses three LCD
screens 6480x3840 in multihead configuration. All LCD screens are
part of the same desktop and part of the same xserver.
Then I press Ctrl-Alt-F4 to switch to another text virtual terminal,
there I log in as user 'yade' and type
$ startx -- -nolisten tcp -dpi 100
On nvidia drivers it works and it starts yet another xserver (owned
by user yade) which uses three LCD screens 6480x3840 in multihead
configuration.
The only way to work as former user 'research' is to press Ctrl-Alt-F2
to switch to its xserver.
Then I press Ctrl-Alt-F11 to another text virtual console, there I
log in as another user and start third xserver with the same command:
$ startx -- -nolisten tcp -dpi 100
I am attaching Xorg.0.log from succesfull startup and a (second)
failed startup.
I hope that I explained my use case in an understandable manner?
> If you want different X
> servers for each (or groups of) outputs of a single GPU, then you need
> to get leasing going.
It's not like this. At single time all GPU outputs go to single
xserver. I just switch between xservers by switching virtual
terminals (pressing Ctrl-Alt-F2, then Ctrl-Alt-F4).
> I'm not sure as to your precise use-case, but perhaps another option
> is to have a single X server with multiple X screens. This can be done
> by enabling ZaphodHeads. This was a common way to get a mega-screen
> across multiple GPUs prior to output slaving being introduced, there's
> a guide here https://nouveau.freedesktop.org/wiki/MultiMonitorDesktop/
I am sure that single X server will not work here. Each xserver is
owned by different user. I organized it in this way so that command
"slay yade" will not interfere with my other working X sessions.
I have only one graphics card in my computer, it has three
DisplayPort outputs, and they are connected to my three LCD screens.
> Lastly, note that no matter how many physical outputs there might be,
> Kepler+ only supports 4 CRTC's and earlier gens had 2. That puts a
> hw-imposed upper limit on the number of images that can be produced
> for these outputs.
My graphics card is GeForce GTX 1060 SC 6GB GDDR5 (192 Bit) DVI-D, 3xDP, HDMI
Does it mean that with nouveau driver my use-case will work with only
2 screens or with 4 screens?
Please note that my use-case works perfectly (except the occasional
system freeze roughly every three months) when I use nvidia drivers.
04:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1) (prog-if 00 [VGA controller])
Subsystem: eVga.com. Corp. GP106 [GeForce GTX 1060 6GB]
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 11
NUMA node: 0
Region 0: Memory at de000000 (32-bit, non-prefetchable)
Region 1: Memory at c0000000 (64-bit, prefetchable)
Region 3: Memory at d0000000 (64-bit, prefetchable)
Region 5: I/O ports at 7000
Expansion ROM at df000000 [disabled]
Capabilities: <access denied>
Kernel driver in use: nouveau
Kernel modules: nouveau
thanks a lot for your help!
Janek Kozicki
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cannot start a secondary Xserver with resolution 6480x3840
[not found] ` <20190121202705.6557b5f7-EEQwe9FboP/QT0dZR+AlfA@public.gmane.org>
@ 2019-01-22 2:37 ` Ilia Mirkin
[not found] ` <CAKb7Uvi-pH9TCar=J5vnYhEmRSBG6AVbgfoXfyiCtxEbUEZaeQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
0 siblings, 1 reply; 6+ messages in thread
From: Ilia Mirkin @ 2019-01-22 2:37 UTC (permalink / raw)
To: Janek Kozicki; +Cc: nouveau
The scenario you describe should most definitely work -- switching
between different instances of X running on different vt's.
Your GPU has 4 CRTC's (Kepler, then Maxwell, then Pascal -- that's
your generation), which means you can have up to 4 heads at the same
time.
Here's a config that I use to get both of my monitors to come up the
way I want them to, using the nouveau ddx, without messing with randr
on startup:
Section "Monitor"
Identifier "Mon0"
Option "Rotate" "left"
EndSection
Section "Monitor"
Identifier "Mon1"
Option "Rotate" "right"
Option "RightOf" "DVI-D-1"
EndSection
Section "Device"
Identifier "Card0"
Driver "nouveau"
BusID "PCI:2:0:0"
Option "Monitor-DVI-D-1" "Mon0"
Option "Monitor-HDMI-1" "Mon1"
EndSection
Presumably you want the same setup for all your instances of X, but in
case that's not the case, you can have multiple different configs, and
invoke them with Xorg -config <name of config>.
If you still have problems, I'd encourage you to join #nouveau on
irc.freenode.net -- much easier to resolve such issues in realtime.
Cheers,
-ilia
On Mon, Jan 21, 2019 at 2:32 PM Janek Kozicki
<janek.listy.mailowe@gmail.com> wrote:
>
> Uh, I wanted to attach the Xorg.0.log, but I got a reply that it is
> too big. How can I send to mailing list with attachments? Or is it
> fine to wait for moderator approval?
>
>
>
> Hi,
>
> thank you very much for your reply.
>
> I will explain my use case in more detail. First thing is to note that
> it worked with nvidia (apart from this annoying system freeze which
> happened roughly every three months).
>
>
> > First off, you're not using the nouveau ddx, you're using the
> > modesetting ddx. This isn't a problem in itself, but if you're going
> > to report bugs, you should file them against the proper component.
>
> oh, wow. I don't know what is ddx or modesetting ddx. Google tells me
> that it is related to intel drivers? But I have nvidia card. And
> Xorg.0.log refers to nouveau and nv.
>
> Please provide me some links where I can learn about the difference
> between nouveau and ddx.
>
>
> > Secondly, I'm a bit unclear as to what your setup is. A single X
> > server takes over a whole GPU. Recently "leasing" has been introduced
> > which enables a drm master to "lease" certain outputs to another
> > process, but I haven't played much with it.
>
> I press Ctrl-Alt-F2 to switch to text virtual terminal, there I log
> in as user 'research' and type
>
> $ startx -- -nolisten tcp -dpi 100
>
> Thus I start an xserver (owned by user research) which uses three LCD
> screens 6480x3840 in multihead configuration. All LCD screens are
> part of the same desktop and part of the same xserver.
>
> Then I press Ctrl-Alt-F4 to switch to another text virtual terminal,
> there I log in as user 'yade' and type
>
> $ startx -- -nolisten tcp -dpi 100
>
> On nvidia drivers it works and it starts yet another xserver (owned
> by user yade) which uses three LCD screens 6480x3840 in multihead
> configuration.
>
> The only way to work as former user 'research' is to press Ctrl-Alt-F2
> to switch to its xserver.
>
> Then I press Ctrl-Alt-F11 to another text virtual console, there I
> log in as another user and start third xserver with the same command:
>
> $ startx -- -nolisten tcp -dpi 100
>
> I am attaching Xorg.0.log from succesfull startup and a (second)
> failed startup.
>
> I hope that I explained my use case in an understandable manner?
>
> > If you want different X
> > servers for each (or groups of) outputs of a single GPU, then you need
> > to get leasing going.
>
> It's not like this. At single time all GPU outputs go to single
> xserver. I just switch between xservers by switching virtual
> terminals (pressing Ctrl-Alt-F2, then Ctrl-Alt-F4).
>
>
> > I'm not sure as to your precise use-case, but perhaps another option
> > is to have a single X server with multiple X screens. This can be done
> > by enabling ZaphodHeads. This was a common way to get a mega-screen
> > across multiple GPUs prior to output slaving being introduced, there's
> > a guide here https://nouveau.freedesktop.org/wiki/MultiMonitorDesktop/
>
> I am sure that single X server will not work here. Each xserver is
> owned by different user. I organized it in this way so that command
> "slay yade" will not interfere with my other working X sessions.
>
> I have only one graphics card in my computer, it has three
> DisplayPort outputs, and they are connected to my three LCD screens.
>
>
> > Lastly, note that no matter how many physical outputs there might be,
> > Kepler+ only supports 4 CRTC's and earlier gens had 2. That puts a
> > hw-imposed upper limit on the number of images that can be produced
> > for these outputs.
>
>
> My graphics card is GeForce GTX 1060 SC 6GB GDDR5 (192 Bit) DVI-D, 3xDP, HDMI
>
> Does it mean that with nouveau driver my use-case will work with only
> 2 screens or with 4 screens?
>
> Please note that my use-case works perfectly (except the occasional
> system freeze roughly every three months) when I use nvidia drivers.
>
>
> 04:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1) (prog-if 00 [VGA controller])
> Subsystem: eVga.com. Corp. GP106 [GeForce GTX 1060 6GB]
> Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
> Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
> Latency: 0, Cache Line Size: 64 bytes
> Interrupt: pin A routed to IRQ 11
> NUMA node: 0
> Region 0: Memory at de000000 (32-bit, non-prefetchable)
> Region 1: Memory at c0000000 (64-bit, prefetchable)
> Region 3: Memory at d0000000 (64-bit, prefetchable)
> Region 5: I/O ports at 7000
> Expansion ROM at df000000 [disabled]
> Capabilities: <access denied>
> Kernel driver in use: nouveau
> Kernel modules: nouveau
>
>
>
> thanks a lot for your help!
> Janek Kozicki
> _______________________________________________
> Nouveau mailing list
> Nouveau@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/nouveau
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Cannot start a secondary Xserver with resolution 6480x3840
[not found] ` <CAKb7Uvi-pH9TCar=J5vnYhEmRSBG6AVbgfoXfyiCtxEbUEZaeQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2019-01-23 11:10 ` Janek Kozicki
0 siblings, 0 replies; 6+ messages in thread
From: Janek Kozicki @ 2019-01-23 11:10 UTC (permalink / raw)
To: nouveau, Ilia Mirkin
Thanks a lot for helping with this stuff on irc! I would like to
report more stuff :)
1. xterm refresh is slow when scrolling. On nvidia drivers that was an instant refresh.
I made a video to make you believe: https://www.youtube.com/watch?v=W2_DnniDaGI
If it is so slow, then maybe profiling this can be a lot easier to spot
which function takes so much time.
I have recompiled xserver-xorg-video-nouveau-1.0.15 and linux-kernel
4.20.3, so it's not a problem for me to apply some debugging and
profiling patches so that we could find which function call is to blame.
2. that kernel oops happened twice
WARNING: CPU: 22 PID: 18282 at drivers/gpu/drm/nouveau/nvif/vmm.c:71 nvif_vmm_put+0x65/0x70 [nouveau]
maybe I will nail it down. It first triggered when I logged out from
the fourth xserver, or to be more precise here's what I did:
1. reboot PC
2. start 1st xserver on vt11
2. start 2nd xserver on vt2
3. start 3rd xserver on vt4
4. start 4th xserver on vt5
5. chat on irc on vt11
6. switch to vt5 then click to log out of the xserver. Then this bug appeared.
7. afterwards whenever I exited xserver the screens would all turn
off, Ctrl-Alt-Fn did not work, and the only way to recover virtual
terminals is to ssh remotely then type as root command like `chvt 11`
I am willing to try some profling patches to fix xterm scrolling
issue. Buy while applying debug patches we might as well investigate
this kernel oops.
3. Last but not least chromium is very slow. Upon startup it prints:
[752:752:0123/115707.192705:ERROR:browser_dm_token_storage_linux.cc(93)] Error: /etc/machine-id contains 0 characters (32 were expected).
nvc0_screen_create:937 - Error allocating PGRAPH context for 3D: -22
libGL error: failed to create dri screen
libGL error: failed to load driver: nouveau
ATTENTION: default value of option force_s3tc_enable overridden by environment.
[798:798:0123/115707.556802:ERROR:sandbox_linux.cc(364)] InitializeSandbox() called with multiple threads in process gpu-process.
[752:870:0123/115707.684864:ERROR:bus.cc(396)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[752:752:0123/115708.836775:ERROR:x11_input_method_context_impl_gtk.cc(149)] Not implemented reached in virtual void libgtkui::X11InputMethodContextImplGtk::SetSurroundingText(const string16&, const gfx::Range&)
libpng warning: iCCP: known incorrect sRGB profile
Writing text in chromium is very slow. The letters appear after
I wrote almost entire sentence.
I did not backport mesa packages yet, so I am without acceleration.
Would mesa help here? Or can we do someting to do some profiling here
too?
best regards
Janek
PS: a note for other people which might be interested:
Finally my xorg.conf is following:
Section "Monitor"
Identifier "MonLeft"
Option "Rotate" "left"
EndSection
Section "Monitor"
Identifier "MonCenter"
Option "Rotate" "left"
Option "RightOf" "DP-2"
EndSection
Section "Monitor"
Identifier "MonRight"
Option "Rotate" "left"
Option "RightOf" "DP-1"
EndSection
Section "Device"
Identifier "Card0"
Driver "nouveau"
BusID "PCI:4:0:0"
Option "Monitor-DP-2" "MonLeft"
Option "Monitor-DP-1" "MonCenter"
Option "Monitor-DP-3" "MonRight"
EndSection
Ilia Mirkin said: (by the date of Mon, 21 Jan 2019 21:37:54 -0500)
> The scenario you describe should most definitely work -- switching
> between different instances of X running on different vt's.
>
> Your GPU has 4 CRTC's (Kepler, then Maxwell, then Pascal -- that's
> your generation), which means you can have up to 4 heads at the same
> time.
>
> Here's a config that I use to get both of my monitors to come up the
> way I want them to, using the nouveau ddx, without messing with randr
> on startup:
>
> Section "Monitor"
> Identifier "Mon0"
> Option "Rotate" "left"
> EndSection
>
> Section "Monitor"
> Identifier "Mon1"
> Option "Rotate" "right"
> Option "RightOf" "DVI-D-1"
> EndSection
>
> Section "Device"
> Identifier "Card0"
> Driver "nouveau"
> BusID "PCI:2:0:0"
>
> Option "Monitor-DVI-D-1" "Mon0"
> Option "Monitor-HDMI-1" "Mon1"
> EndSection
>
> Presumably you want the same setup for all your instances of X, but in
> case that's not the case, you can have multiple different configs, and
> invoke them with Xorg -config <name of config>.
>
> If you still have problems, I'd encourage you to join #nouveau on
> irc.freenode.net -- much easier to resolve such issues in realtime.
>
> Cheers,
>
> -ilia
>
> On Mon, Jan 21, 2019 at 2:32 PM Janek Kozicki
> <janek.listy.mailowe@gmail.com> wrote:
> >
> > Uh, I wanted to attach the Xorg.0.log, but I got a reply that it is
> > too big. How can I send to mailing list with attachments? Or is it
> > fine to wait for moderator approval?
> >
> >
> >
> > Hi,
> >
> > thank you very much for your reply.
> >
> > I will explain my use case in more detail. First thing is to note that
> > it worked with nvidia (apart from this annoying system freeze which
> > happened roughly every three months).
> >
> >
> > > First off, you're not using the nouveau ddx, you're using the
> > > modesetting ddx. This isn't a problem in itself, but if you're going
> > > to report bugs, you should file them against the proper component.
> >
> > oh, wow. I don't know what is ddx or modesetting ddx. Google tells me
> > that it is related to intel drivers? But I have nvidia card. And
> > Xorg.0.log refers to nouveau and nv.
> >
> > Please provide me some links where I can learn about the difference
> > between nouveau and ddx.
> >
> >
> > > Secondly, I'm a bit unclear as to what your setup is. A single X
> > > server takes over a whole GPU. Recently "leasing" has been introduced
> > > which enables a drm master to "lease" certain outputs to another
> > > process, but I haven't played much with it.
> >
> > I press Ctrl-Alt-F2 to switch to text virtual terminal, there I log
> > in as user 'research' and type
> >
> > $ startx -- -nolisten tcp -dpi 100
> >
> > Thus I start an xserver (owned by user research) which uses three LCD
> > screens 6480x3840 in multihead configuration. All LCD screens are
> > part of the same desktop and part of the same xserver.
> >
> > Then I press Ctrl-Alt-F4 to switch to another text virtual terminal,
> > there I log in as user 'yade' and type
> >
> > $ startx -- -nolisten tcp -dpi 100
> >
> > On nvidia drivers it works and it starts yet another xserver (owned
> > by user yade) which uses three LCD screens 6480x3840 in multihead
> > configuration.
> >
> > The only way to work as former user 'research' is to press Ctrl-Alt-F2
> > to switch to its xserver.
> >
> > Then I press Ctrl-Alt-F11 to another text virtual console, there I
> > log in as another user and start third xserver with the same command:
> >
> > $ startx -- -nolisten tcp -dpi 100
> >
> > I am attaching Xorg.0.log from succesfull startup and a (second)
> > failed startup.
> >
> > I hope that I explained my use case in an understandable manner?
> >
> > > If you want different X
> > > servers for each (or groups of) outputs of a single GPU, then you need
> > > to get leasing going.
> >
> > It's not like this. At single time all GPU outputs go to single
> > xserver. I just switch between xservers by switching virtual
> > terminals (pressing Ctrl-Alt-F2, then Ctrl-Alt-F4).
> >
> >
> > > I'm not sure as to your precise use-case, but perhaps another option
> > > is to have a single X server with multiple X screens. This can be done
> > > by enabling ZaphodHeads. This was a common way to get a mega-screen
> > > across multiple GPUs prior to output slaving being introduced, there's
> > > a guide here https://nouveau.freedesktop.org/wiki/MultiMonitorDesktop/
> >
> > I am sure that single X server will not work here. Each xserver is
> > owned by different user. I organized it in this way so that command
> > "slay yade" will not interfere with my other working X sessions.
> >
> > I have only one graphics card in my computer, it has three
> > DisplayPort outputs, and they are connected to my three LCD screens.
> >
> >
> > > Lastly, note that no matter how many physical outputs there might be,
> > > Kepler+ only supports 4 CRTC's and earlier gens had 2. That puts a
> > > hw-imposed upper limit on the number of images that can be produced
> > > for these outputs.
> >
> >
> > My graphics card is GeForce GTX 1060 SC 6GB GDDR5 (192 Bit) DVI-D, 3xDP, HDMI
> >
> > Does it mean that with nouveau driver my use-case will work with only
> > 2 screens or with 4 screens?
> >
> > Please note that my use-case works perfectly (except the occasional
> > system freeze roughly every three months) when I use nvidia drivers.
> >
> >
> > 04:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1) (prog-if 00 [VGA controller])
> > Subsystem: eVga.com. Corp. GP106 [GeForce GTX 1060 6GB]
> > Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
> > Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
> > Latency: 0, Cache Line Size: 64 bytes
> > Interrupt: pin A routed to IRQ 11
> > NUMA node: 0
> > Region 0: Memory at de000000 (32-bit, non-prefetchable)
> > Region 1: Memory at c0000000 (64-bit, prefetchable)
> > Region 3: Memory at d0000000 (64-bit, prefetchable)
> > Region 5: I/O ports at 7000
> > Expansion ROM at df000000 [disabled]
> > Capabilities: <access denied>
> > Kernel driver in use: nouveau
> > Kernel modules: nouveau
> >
> >
> >
> > thanks a lot for your help!
> > Janek Kozicki
> > _______________________________________________
> > Nouveau mailing list
> > Nouveau@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/nouveau
--
# Janek Kozicki http://janek.kozicki.pl/
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-01-23 11:10 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-21 14:42 Cannot start a secondary Xserver with resolution 6480x3840 Janek Kozicki
[not found] ` <20190121154238.3ffb6eb0-EEQwe9FboP/QT0dZR+AlfA@public.gmane.org>
2019-01-21 15:50 ` Janek Kozicki
2019-01-21 18:50 ` Ilia Mirkin
[not found] ` <CAKb7UviFnvkX7nEvyYikQy3M5jUA9sDbMYaAsJ0w7MqzW=_Y9Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-01-21 19:32 ` Janek Kozicki
[not found] ` <20190121202705.6557b5f7-EEQwe9FboP/QT0dZR+AlfA@public.gmane.org>
2019-01-22 2:37 ` Ilia Mirkin
[not found] ` <CAKb7Uvi-pH9TCar=J5vnYhEmRSBG6AVbgfoXfyiCtxEbUEZaeQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-01-23 11:10 ` Janek Kozicki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox