| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
No need to jump through hoops to track __DRIdrivers and avoid dlopening the
same .so more than twice, dlopen() does this internally. Besides, we
were already bypassing this and dlopening drivers for each screen,
whether or not they were already dlopened.
|
|
|
|
| |
Move a lot of code over from glx_ext.c.
|
|
|
|
| |
Fixes #14799.
|
|
|
|
|
| |
1. Follow EXT_texture_rectangle with YCbCr texture
2. swap UV component for MESA_FORMAT_YCBCR
|
| |
|
| |
|
|
|
|
|
| |
is created with mode GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH.
This issue is introduced by 20b8bff49cba3e8246e29004c5ff38f231d589ff
|
|
|
|
|
|
|
|
|
| |
This is defaulted off as it has potentially large memory costs for a modest
performance gain. Ideally we will improve DRM performance to the point where
this optimization is not worth the memory cost in any case, or find some
middle ground in caching only limited numbers of certain buffers. For now,
this provides a modest 4% improvement in openarena on GM965 and 10% in openarena
on GM945.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
When the DRI doesn't parse the event buffer for a while, the X server
may overwrite data that the driver didn't get a chance to look at. The
reemitDrawableInfo callback requests that the X server reemit all info
for the specified drawable. To make use of this, the drive needs to know
the new tail pointer so it know where to start reading from.
|
|
|
|
|
|
| |
This also fixes the problem where the X server does multiple resizes before
the DRI driver gets the events. The obsolete buffer attach events then
reference already destroyed buffer objects.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Instead of passing in a fixed struct, the loader now passes in a list
of __DRIextension structs, to advertise the functionality it can provide
to the driver. Each extension is individually versioned and can be
extended or phased out as the interface develops.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now the DRI2 screen constructor takes 3 different versions:
DRI, DDX and DRM. This is mostly useless, though:
DRI: The DRI driver doesn't actually care about the DRI protocol,
it only talks to the loader, which in turn speaks DRI protocol. Thus,
the DRI protocol version is of not interest to the DRI driver, but it
needs to know what functionality the loader provides. At this point
that's reflected in the __DRIinterfaceMethods struct and the
internal_version integer.
DDX: The DDX version number is essentially used to track extensions
to the SAREA. With DRI2 the SAREA consists of a number of versioned,
self-describing blocks, so the DDX version is no longer interesting.
DRM: We have the fd, lets just ask the kernel ourselves.
|
|
|
|
| |
Another regression from the intel_context.c merge.
|
|
|
|
| |
fix double free issue(bug#14710). It also corrects glsl/bitmap demo behavior.
|
|
|
|
|
| |
Previously the frame_buffer_texobj case would have been bound as a normal
texture, at best resulting in no surface data being associated with it.
|
|
|
|
|
| |
Otherwise, we would assertion error when doing the final unreference of the
buffer with an outstanding map (catching the memory leak).
|
|
|
|
|
| |
These changes are taken from the xf86-video-ati driver. They update the header
file accordingly and also remove some UNKOWN variables.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Currently a callback delete_shader_cb is used for deleting shader
and shader program objects. Mesa detaches all attached shaders in
_mesa_free_shader_program_data when deleting shader program objects. However
it is likely that these shaders have been freed in _mesa_free_shader,
which will result in unexpected behaviour. This fix uses a single callback for
shader program objects and deletes shader program objects before shader objects.
|
| |
|
|
|
|
|
|
| |
Windows/DOS users should enable core.autocrlf from now on:
git config --global core.autocrlf true
|
|
|
|
|
|
| |
Until now the polygon mode was completely turned of when you used
GL_POINT. For me it looked buggy to completely disable the polygon
mode for FrontMode and BackMode if any of these was GL_POINT.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
With DRI2 we there is no screen region until a drawable is bound to
the context. Set up the framebuffer texture in meta_draw_region instead
which should also handle the case where the draw region changes as a
result of resizing a redirected window or resizing the screen.
|
| |
|
|
|
|
| |
This was replaced by Mesa core code.
|
| |
|
|
|
|
|
|
| |
This commit adds most of the graphics backend registers and of the rasterizer
registers. Again, some minor bugs were found and marked with TODO or even
fixed.
|
| |
|
|
|
|
| |
Dont stop on fence creation errors.
|
|
|
|
|
| |
Argh, seriously, I did test that, I just forgot to amend the commit
before pushing.
|
| |
|
|
|
|
|
| |
Sort-of a stop-gap workaround. There are a couple of nicer ways to
do this that doesn't require dlfcn.h, but they're more invasive.
|
|
|
|
|
| |
Also, use -include to avoid error message when make initially fails to
include the non-existent depend file.
|
| |
|
|
|
|
|
| |
Avoids spamming compilation output with tons of warnings about
use of possibly uninitialized variables.
|
|
|
|
|
| |
They're changed by the intel driver implementation and thus not const.
Fixes compilation warning.
|
|
|
|
|
|
|
|
|
|
|
| |
The DriverAPI is internal to the DRI drivers and GetDrawableMSC
obsoletes GetMSC. Also, since the DRI driver interface has not yet
been released, just drop the getMSC function from the DRI interface
instead using the ABI preserving version mechanism.
Finally, using void pointer privates in the DRI interface is not allowed,
always pass the actual types around (__DRIdrawable in this case) to
enhance type safety and readability of the code.
|
| |
|
|
|
|
| |
Corrects commit 74ae5a875d6b3f1ffea2ac09c6ef0062d4980f15.
|