Announcement

Collapse
No announcement yet.

DRI3 Support Proposed For Mesa 10.0

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • DRI3 Support Proposed For Mesa 10.0

    Phoronix: DRI3 Support Proposed For Mesa 10.0

    Following the X.Org Server 1.15 Release Candidate that introduces Direct Rendering Infrastructure 3 (DRI3 a.k.a. DRI3000), Keith Packard has proposed a set of patches that provide DRI3 support for Mesa drivers. The only patched hardware driver though for DRI3 is currently the Intel i965 DRI driver...

    http://www.phoronix.com/vr.php?view=MTUwMzU

  • #2
    Originally posted by phoronix View Post
    Phoronix: DRI3 Support Proposed For Mesa 10.0

    Following the X.Org Server 1.15 Release Candidate that introduces Direct Rendering Infrastructure 3 (DRI3 a.k.a. DRI3000), Keith Packard has proposed a set of patches that provide DRI3 support for Mesa drivers. The only patched hardware driver though for DRI3 is currently the Intel i965 DRI driver...

    http://www.phoronix.com/vr.php?view=MTUwMzU
    I wonder if mesa and the x teams should merge into one. there is a lot of unneeded back and forth communication. DRI/DRM/Mesa/Cairo/X/Wayland should be a well oiled machine. This is the big advantage of Windows. The devs can take a holistic view across the stack because the kernel, compositor, scheduler, DirectX all have to talk together well. Unix for all its perks, is a Frankenstein, the programs head and tail were written by two different people, at different times, using different conventions.

    Comment


    • #3
      Cool!

      I hope the Radeon, Nouveau and other drivers get DRI3 support soon too!

      I hope it wont take long until DRI2 is dropped.
      By the way, is does X.org and Mesa still have any DRI1 left or is DRI1 completely dropped in favor of DRI2?

      Comment


      • #4
        Originally posted by garegin View Post
        I wonder if mesa and the x teams should merge into one. there is a lot of unneeded back and forth communication. DRI/DRM/Mesa/Cairo/X/Wayland should be a well oiled machine. This is the big advantage of Windows. The devs can take a holistic view across the stack because the kernel, compositor, scheduler, DirectX all have to talk together well. Unix for all its perks, is a Frankenstein, the programs head and tail were written by two different people, at different times, using different conventions.
        Mesa is just meant to be an OpenGL library with OpenGL Drivers. Sure it has to have infrastructure to support X or Wayland or (insert-next-gen-display-server) but it shouldn't be too tightly tied to any one of those projects. Makes it harder to transition away from it when we need to / want to.

        Comment


        • #5
          https://bugzilla.gnome.org/show_bug.cgi?id=711028

          Comment


          • #6
            Sorry, couldn't edit.

            Does this all mean there's a risk this petbug will not be resolved until spring 2014?!
            https://bugzilla.gnome.org/show_bug.cgi?id=711028

            Comment


            • #7
              Originally posted by Bucic View Post
              Sorry, couldn't edit.

              Does this all mean there's a risk this petbug will not be resolved until spring 2014?!
              https://bugzilla.gnome.org/show_bug.cgi?id=711028
              That bug's been known about for a long time o.O Keith mentioned that last year at linux.conf.au, hell he specifically brought it up when talking about DRI3 because he couldn't fix tearing on Sandy Bridge without doing DRI3.

              As far as when it will be fixed... Xorg 1.15 has DRI3. If Mesa 10.0 gets DRI3 in the intel driver then it'll be fixed come december. If it doesn't get merged then it'll be pulled for mesa 11.0 / 10.1 which should come out ~March. If it doesn't get merged now you MAY still be able to get it, depending on if your distro doesn't mind merging it as a non-upstream patch.

              BUT if the Intel driver doesnt get the DRI3 patch merged for 10.0, AND your distro doesn't patch it ahead of time, then yes. The next "stable" release is March of next year about 5months from now.

              Comment


              • #8
                Originally posted by Ericg View Post
                That bug's been known about for a long time o.O Keith mentioned that last year at linux.conf.au, hell he specifically brought it up when talking about DRI3 because he couldn't fix tearing on Sandy Bridge without doing DRI3.

                As far as when it will be fixed... Xorg 1.15 has DRI3. If Mesa 10.0 gets DRI3 in the intel driver then it'll be fixed come december. If it doesn't get merged then it'll be pulled for mesa 11.0 / 10.1 which should come out ~March. If it doesn't get merged now you MAY still be able to get it, depending on if your distro doesn't mind merging it as a non-upstream patch.

                BUT if the Intel driver doesnt get the DRI3 patch merged for 10.0, AND your distro doesn't patch it ahead of time, then yes. The next "stable" release is March of next year about 5months from now.
                Thank you for answering my question! I use Fedora. I hope Fedora guys will pull the fix earlier.

                PS. The bloke(s) who broke it all, i.e. replaced the working implementation with a new one before introduction of driver functionality required by the new implementation, is a fucking genius, no doubt about it.

                Comment


                • #9
                  Originally posted by Bucic View Post
                  PS. The bloke(s) who broke it all, i.e. replaced the working implementation with a new one before introduction of driver functionality required by the new implementation, is a fucking genius, no doubt about it.
                  You mean the GPU hardware designers at Intel? As mentioned several times this only looks like a regression on the software side because old hardware did it automatically and new hardware requires DRI3 to emulate that.

                  Comment


                  • #10
                    Currently patching up my experimental Gentoo overlay for DRI3 support, will report back...

                    Comment


                    • #11
                      Originally posted by s_j_newbury View Post
                      Currently patching up my experimental Gentoo overlay for DRI3 support, will report back...
                      In this case, try the new Mesa patches posted on dri-devel.

                      The patches were rewritten to create and use a new infrastructure around '__DRIimage' which had already some functionalities like allocate, export fd, import fd, etc.
                      The goal was to use a more general interface, so it can be better adapted to other backends (Wayland, gbm, etc).

                      Comment


                      • #12
                        Originally posted by mannerov View Post
                        In this case, try the new Mesa patches posted on dri-devel.

                        The patches were rewritten to create and use a new infrastructure around '__DRIimage' which had already some functionalities like allocate, export fd, import fd, etc.
                        The goal was to use a more general interface, so it can be better adapted to other backends (Wayland, gbm, etc).
                        That's newer code than in Keith's git tree's? If so I'll do that. Currently, I've generated patches from merging Keith's changes with the 1.9.1 release of libxcb, xcb-proto, and current master versions of libdrm, xserver, mesa and created ebuilds for the new protos/libxshmfence. I'm currently working on merging the intel driver, is there a patch against the master branch for that? It's looking trickier since UXA has been separated out compared to the code Keith worked from.

                        Comment


                        • #13
                          Originally posted by s_j_newbury View Post
                          That's newer code than in Keith's git tree's? If so I'll do that. Currently, I've generated patches from merging Keith's changes with the 1.9.1 release of libxcb, xcb-proto, and current master versions of libdrm, xserver, mesa and created ebuilds for the new protos/libxshmfence. I'm currently working on merging the intel driver, is there a patch against the master branch for that? It's looking trickier since UXA has been separated out compared to the code Keith worked from.
                          He updated his git tree some hours ago to contain these new patches.

                          For the intel DDX, you should probably try to use directly this old patched DDX, or wait patches for master

                          Comment


                          • #14
                            Originally posted by mannerov View Post
                            He updated his git tree some hours ago to contain these new patches.

                            For the intel DDX, you should probably try to use directly this old patched DDX, or wait patches for master
                            Okay, I should have the latest mesa code then. There was a build failure which I fixed and I've emailed a patch to Keith.

                            It looks like the DDX has only been patched to have DRI3 support for UXA at the moment, or am I misreading the diff? I've not given up getting the changes working with SNA against master, if I get it going I'll post a patch to intel-gfx.

                            Comment


                            • #15
                              I've spent time enough on for now. Adapting the DRI3 related changes to SNA have been fairly straightfoward, mostly just finding the appropriate structs in the different files etc, until I started on ..do_pageflip() ... maybe I should just wait until somebody more familiar takes a look...

                              Comment

                              Working...
                              X