Commit Graph

59 Commits

Author SHA1 Message Date
dcoppa
964be84ed2 Bugfixes from upstream.
Minor tweaks (shutdown(2) related bits) by me.

OK matthieu@
2010-10-06 07:50:06 +00:00
matthieu
4638a5f252 Update to libxcb 1.7 2010-09-04 10:00:58 +00:00
dcoppa
2cda6f76a0 Pull in some fixes from upstream:
o various memleak fixes
o ensure get_wm_class_from_reply returns a valid C-string

OK matthieu@, deraadt@
2010-08-04 07:47:53 +00:00
oga
ed108ba924 Two patches cherry picked from mesa master just after 7.8 was branched
(but never made it into the 7.8 branch).

first:
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Thu Apr 22 12:47:41 2010 -0700

    DRI2: add config query extension

    Add a new DRI2 configuration query extension.  Allows for DRI2
    client code to query for common DRI2 configuration options.

second:
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Thu Apr 22 12:49:03 2010 -0700

    DRI2/GLX: check for vblank_mode in DRI2 GLX code

    Re-add support for the vblank_mode environment and configuration
    variable.  Useful for benchmarking and app control.

The final affect being that config and environment variables for
controlling swap mode work with dri2 now. which helps me a lot with
debugging.

ok matthieu@.
2010-07-24 19:03:21 +00:00
oga
ee7fac2a85 When a dri driver dlopen()s libGL to try and get the correct symbols (in
case libGL itself was dlopen()ed), it was using "libGL.so.1" (linux
convention, doesn't work on OpenBSD). Change it to "libGL.so" so it has
a hope in hell of working.

I finally wrote this patch when trying to port perl's OpenGL modules
ages ago and i finally decided that hacking each instance of dlopening
libGL to use RTLD_GLOBAL was dumb.

ok matthieu@
2010-07-24 18:16:40 +00:00
oga
5e874c650c This is a hack.
Since mesa changed some code, GL applications have been rather nasty to
the xserver, if they are unconstrained rendering wise they spam too many
requests at the xserver and make it slow as hell (even if the cpu is
fairly idle).

There is a throttling mechanism in the xserver (1.8 at least), but that
only really works if you are doing vblank syncing (which is turned off
in our intel driver right now for unrelated reasons), and even then an unsynced
client can cause the same problem.

While a proper fix is being worked on (I am in discussion with X
developers), comment out two conditionals in the intel mesa driver so
that even when using dri2 swapbuffers we wait on the swapbuffers before
last before rendeing more, this prevents almost DoSing the server.

Tested on ironlake, 855 and 965 by me (and my matthieu as well). ok
matthieu@
2010-07-24 18:13:33 +00:00
matthieu
cd750bf570 Update to Mesa 7.8.2. Tested by johan@. Thanks. 2010-06-22 20:04:22 +00:00
oga
9dc65d790c Bring back the local patch that has a habit of vanishing every time we
update mesa.

Specifically, we disallow in radeondrm for dri clients mapping
registers, so don't try and map them (and thus fail as we currently
were). for r300+ this was only used for falling back on old drm versions
(doesn't matter). For r100, the new BO abstraction used the SWI number
(in hardware scratch reg 3) for the buffer age, so use the newly added
getparam member to grab that info instead of trying to read the mapped
registers.

Update to the lastest kernel headers  before you even think about
building this or trying to use a snapshot on r100/r200.

So now radeon works with mesa again, hoorah!

Tested on rv250 by Josh Elsasser, and on R420 (and x800) by myself.
2010-05-26 22:55:53 +00:00
matthieu
da1bd1e8ce Remove a demo with huge data files. 2010-05-22 21:04:09 +00:00
matthieu
30f07f27f7 Remove a demo application with 40M of data files. 2010-05-22 20:50:09 +00:00
matthieu
e4fce73489 Update to Mesa 7.8.1. Tested on a bulk ports build by naddy@, ok oga@. 2010-05-22 20:05:42 +00:00
matthieu
852acd6263 Update to libxcb 1.6. Mostly for new dri2 helper lib, requested by oga@. 2010-04-18 20:06:18 +00:00
matthieu
e18fcadebe The reply type could be XCB_NONE if the property is not present.
Patch from upstreams, pointed out by David Coppa.
2010-03-20 07:41:31 +00:00
matthieu
7b8404708b Validate size of wm_hints and wm_size_hints
Without these checks, we can overflow the buffer or divide by zero.

Patch from upstreams, From David Coppa.
2010-03-20 07:37:07 +00:00
oga
1216b6a36c Fix some problems in libxcb-icccm affecting xcb based window managers.
Specifically, fix checks on the data so then we use the correct
sanitised length. From Peter Harris (pharris AT opentext DOT com), an
xcb developer, via David Coppa (dcoppa AT gmail DOT com); thanks!

requested by deraadt@
2010-03-07 15:51:34 +00:00
oga
383d27823d Stop printing to stderr whenever we fail to initialise GEM (every time
without diffs), libraries shouldn't do that, and it's frankly pretty
irritating.

ok matthieu ages ago. prompted by deraadt@
2009-11-21 13:05:59 +00:00
oga
f142b782ba undo a bit of overzealous backporting from the DRI2 bits, this chunk
isn't strictly needed and it causes GL apps to segfault on exit on the
965 with dri1 and xserver 1.6.

ok matthieu@
2009-09-08 23:31:10 +00:00
matthieu
86fe704ca5 update to xcb-util 0.3.6. Tested on a packages bulk build by naddy@. 2009-09-05 15:55:46 +00:00
matthieu
e9d6b4f7bf Update to libxcb 1.4. tested by naddy@ on a packages bulk build. 2009-09-05 15:54:43 +00:00
oga
9997d7a073 backport some code from mesa current (and 7.5) so that the dri2 protocol
is correctly handled. without fixes to mesa and the ddx, the so-called
backwards compat goop that was added just plain does not work and ends
up with rendering bullshit.
2009-08-06 15:50:02 +00:00
matthieu
7d22228cff regen after gcc 2.95 build fix 2009-07-20 20:55:45 +00:00
matthieu
ee57c931d5 gcc 2.95 build fixes. 2009-07-20 20:55:10 +00:00
matthieu
60c1de6788 Import xkeyboard-config version 1.6. 2009-06-06 17:52:23 +00:00
matthieu
f3b20b10a0 update to xcb-util 0.3.5 2009-05-31 16:49:15 +00:00
matthieu
8e91f6fca8 update to libxcb 1.3 2009-05-31 16:44:43 +00:00
matthieu
f4c2f8c818 import xcb-util 0.3.4 2009-05-23 14:37:52 +00:00
matthieu
65b2c83108 import libxcb 1.2 2009-05-22 15:55:46 +00:00
matthieu
fced6378df Update to Mesa 7.4.2. Tested by oga@, ckuethe@ and naddy@. 2009-05-17 20:26:36 +00:00
oga
a59dd3b126 Bah. Diff applied strangely last time. Fix fallout.
It builds now.
2009-02-05 01:37:06 +00:00
oga
ba0f4d62e2 Merge in two commits of mine from upstream mesa which mean that on
startup with and when we have only one pipe running we will always pick
the correct vblank pipe to sync to.

ok matthieu@.
2009-02-04 19:48:26 +00:00
oga
5e89e3dfdd Oops, missed a line removal. Fix build. 2009-01-11 20:35:40 +00:00
oga
1892786361 fix use of uninitialised value in one of our local changes.
ok matthieu@
2009-01-11 20:32:31 +00:00
oga
7efd4e6855 Remove ttm entrypoints. That memory manager interface isn't going to see the
light of day and has already been removed in mesa master (ages ago).

As a bonus, removes the annoying "falling back to classic" message on
launching a gl application.

ok matthieu@.
2009-01-10 15:56:13 +00:00
oga
64d859dd9e remove the triple buffering support from the intel driver, the support
from this was removed from the kernel and is very much deprecated.
Pageflipping is also probably broken and should not be used. Similar
change happened in mesa master a while back.

ok matthieu@
2009-01-10 15:27:14 +00:00
oga
89ec318c9a Remove "old style" DRI2 entrypoints.
ok matthieu@.
2009-01-10 15:12:43 +00:00
oga
dce0e78b94 Remove the ARB_occlusion_query support in the intel drivers. It was racy and
broken and the kernel ioctl doesn't exist anymore. GEM has a much better
solution for this.

ok matthieu (as part of a larger diff)
2009-01-10 15:09:50 +00:00
oga
3dcdb7063b For the radeon mesa driver, don't try and map the card's mmio region. We
really don't need it. There's one case where it's used, and that is on
``older'' drms, newer ones provide that one value via a parameter.

This is the first stage in my project to stop all cards mapping
registers. This does mean that drivers that depend on this may
eventually die (tdfx, i'm looking at you!).

ok matthieu@
2009-01-10 14:59:52 +00:00
matthieu
a5aec75608 oops do not commit emacs droppings 2008-11-02 15:03:19 +00:00
matthieu
895907f0b2 Mesa 7.2, Tested by ckuethe@, naddy@, oga@, and others. 2008-11-02 14:58:06 +00:00
matthieu
0c9c122b77 remove VMS specific stuff 2008-11-02 14:27:17 +00:00
matthieu
69e9f99391 remove ms-windows specific stuff 2008-11-02 14:26:07 +00:00
oga
e812b16917 Fix out-of-bounds memory access in swizzle_copy(). My fix was different,
but this one (from mesa, prompted by my diff) should run a little faster.
Now mplayer -vo gl or gl2 works with dri enabled.

Detected by otto malloc.  Some debugging help from todd.

ok matthieu@, todd@.
2008-08-12 23:16:07 +00:00
matthieu
37355e1dc2 unbreak biuld. From Travers Buda. Thanks. 2008-08-02 23:04:55 +00:00
matthieu
1db3addd67 Prevent a crash if Delete is not defined for the given renderbuffer.
Patch from OUSADOU Azwaw. Thanks. ok oga@.
2008-08-02 16:01:32 +00:00
matthieu
80656e86d4 Update to Mesa 7.0.3. tested my oga@ and johan@ 2008-05-31 16:36:47 +00:00
oga
ce0d22a55d When mesa uses sse the current allocator was just using malloc, meaning
that the memory was not set to executable. This caused some horrible
segfaults that due to lack of hardware i've been unable to track down
for months.

Conveniently, there was already a memory allocator that uses mmap to
create executable memory, #ifdef linux. Make it usable for us too.

Problem solved!

Thanks for todd@ for helping me debug, and deraadt@ for noticing the
allocator.

Makes SiS work with dri, probaby solves a bunch of other people too.

ok matthieu@ (who has sent this upstream).
2008-04-19 13:11:24 +00:00
matthieu
a794a5f85b Fix from Eric Anholt in Mesa-current:
[965] Fix potential segfaults from bad realloc.

    C has no order of evaluation restrictions on function arguments, so we
    attempted to realloc from new-size to new-size.
2008-04-17 21:21:27 +00:00
matthieu
b139abf7aa Update to Mesa 7.0.2. Tested by naddy@ (full ports build), simon@
and oga@ (with dri enabled).
2008-02-12 21:09:25 +00:00
matthieu
267ae69ebc __builtin_expect is a gcc 3.x feature. define it out for gcc 2.95.
Patch suggested by miod@. Thanks.
2007-12-21 22:33:22 +00:00
matthieu
5257e11db0 merge Mesa 7.0.1 2007-11-24 17:41:36 +00:00