On 07/18/2015 01:09 PM, Dave Airlie wrote:

We can disable it by default on exa - intel and amd/radeon drivers also
disable by default. However, on gpus >= maxwell only glamor accel is
supported and glamor on nouveau is either dri3/present or no hw accel at
all
afaics.


You probably saw my patches to just remove glamor from nouveau :) That
integration doesn't support DRI2, which in turn means no core contexts
(due to lack of GLX_ARB_create_context_profile), and a slew of other
issues. Seemed easier to just tell people to go use modesetting, which
gets all of these things right(er).


Hm, a total removal would at least make me and my users rather unhappy atm.,
as without glamor no hw accel at all on >= maxwell. modesetting and nouveau
are not on par feature-wise atm. E.g., modesetting as of the next xorg 1.18
server only provides pageflipping via dri3/present and without pageflipping
it is game over for many of my use cases on nouveau-kms. Also modesetting
currently completely lacks ZaphodHeads support. Without ZaphodHeads i can't
have a page-flipped fullscreen window on one subset of outputs and a regular
desktop on another subset, something that is needed for
neuroscience/medical/vr applications.

So what would you want in modesetting to be on par?

DRI2 pageflipping?

Probably not needed? I debugged and tested the DRI3/Present page flipping with modesetting a few months ago. Haven't retested the most recent version of the patches in x-server master, but at that time they seemed to work pretty ok. I'll give this some more testing soon. I also ran it as my desktop for 2-3 days, afair without serious issues, but that wasn't the kind of obsessive stress testing i do for the OpenGL fullscreen pageflipping stuff.

I do remember dpms activity was a crasher last time i tested. Maybe resolved now?

zaphod heads?


Mostly Zaphodheads would be the really important one for me. Lack of it = show stopper for many of my users applications. Users often want to split their gpu into at least 2 x-screens: One for the "operator" to control experimental work sessions via a regular desktop GUI, the other for one unredirected kms-pageflipped fullscreen window on one or multiple attached Zaphodheads outputs for the actual presentation on the 2nd x-screen, e.g., single display, or dual display for stereoscopic stuff - stereo goggles and such, or > 2 displays for more advanced VR stuff. The page flipping is important in my case because precise timing and precise timestamping is important which we only get with page flips, also to get out pixels as bit-exact as possible without interference from compositors, e.g. texture mapping artifacts etc. On DRI3/Present, page flips are also the only way atm. to get tear-free Presents, the way it is implemented.

More regular users seem to like to have a separate x-screen for TV sets and use ZaphodHeads for that.

The current nouveau or radeon implementation would be a good reference for one that seems to work well with multiple ZaphodHeads per x-screen + 1 extra patch of mine against nouveau floating on nouveau-devel "[PATCH] Take shift in crtc positions for ZaphodHeads configs into account." That patch is needed for nouveau-ddx, or any generic driver that deals with nouveau-kms. Afaics the other kms drivers return a kencoder->possible_crtcs mask which allows any crtc to go with any encoder, but nouveau-kms gets that info from the VBIOS DCB and sometimes the mask is a bit more special and needs the extra treatment from that patch, or bad things will happen, e.g., on some nv-50 cards.

anything else? I would like for F23 to ship a modesetting which I can
replace intel/nouveau/ati with.

Not at the moment. I'll think about it some more and give the current modesetting driver a bit more testing to see if something shows up.

thanks,
-mario


Dave.

_______________________________________________
Nouveau mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to