Commit Graph

1883 Commits

Author SHA1 Message Date
Kristian Høgsberg
2c11cde336 More patches from David Reveman:
Add GL_ARB_texture_non_power_of_two, GL_EXT_framebuffer_object and
    GL_NV_texture_env_combine4 extensions.
Add __GLXcontext destructor and flush context cache there and on
    loseCurrent.
Chain back to new __GLXcontext destructor. (__glXMesaContextForceCurrent):
    Set render table on forceCurrent. (init_screen_visuals): Index pVis
    array correctly. (GlxGetMesaProvider): Add this.
Hook up FBO marshalling.
2006-03-17 00:35:18 +00:00
Eric Anholt
14aafc258c Change EXA so that exaMoveOutPixmap() retains the framebuffer copy of the
pixmap, and damage is tracked so that a later exaMoveInPixmap won't
    result in an upload if no upload is necessary. This will likely improve
    the performance of the "Always" migration scheme significantly, and is
    a step in the path to more exact damage tracking between framebuffer
    and system memory.
2006-03-16 18:43:55 +00:00
Daniel Stone
d0d336efd5 Add support for ZX2 PCI-E local bus adaptors. (Alex Williamson, HP)
Use soft timeout register to avoid MCAs when probing for non-existent local
    bus adaptors on ZX2. (Alex Williamson, HP)
2006-03-16 16:29:17 +00:00
Adam Jackson
175980580e Bump to requiring fixesproto >= 4.0 and compositeproto >= 0.3. 2006-03-15 23:05:53 +00:00
Matthieu Herrb
6fe377af5a - OpenBSD needs -Wl,-export-dynamic to export symbols from main executable
to modules.
- Probe for OpenBSD aperture driver and define HAS_APERTURE_DRV
    accordingly.
2006-03-15 21:25:38 +00:00
Felix Kuehling
21f7f2fb11 Enable correct handling of the BTS instruction (opcode 0f ab) The code was
there but #ifdefed out. Insead of BTS, BT was executed. This patch
    enables the BTS function and hooks it up the the correct opcode. (ATI
    Technologies Inc.)
2006-03-15 18:43:32 +00:00
Felix Kuehling
b726aa502a Update to build against Mesa CVS HEAD. 2006-03-15 18:37:44 +00:00
Eric Anholt
c74464d92c Don't let pinned pixmaps get migrated in when using the "Always" migration
scheme. This notably keeps the visible screen from getting migrated in
    to a new location in framebuffer.
Reported by: Michel Dänzer.
2006-03-15 16:59:45 +00:00
Adam Jackson
b9c43cde1e Coverity #1042, 1043: Nuke some dead variables. 2006-03-15 16:56:10 +00:00
Adam Jackson
5e106a71b9 Coverity #807: Fix a memory leak in XFixesExpandRegion. 2006-03-15 16:49:04 +00:00
Adam Jackson
a3ef63696c Coverity #490: Fix a range check in xf86vidmode extension. 2006-03-15 16:36:31 +00:00
Adam Jackson
152090ce44 Coverity #487: Check version number correctly. 2006-03-15 16:33:12 +00:00
Adam Jackson
72cc630725 Coverity #491: Check version number correctly. 2006-03-15 16:32:05 +00:00
Adam Jackson
460f2ea4a5 Coverity #794: Fix a highly unlikely memory leak. 2006-03-15 16:21:04 +00:00
Adam Jackson
116d158e85 Coverity #269: Compare the requested ABI class against the ABI class of the
module, not the module class.
2006-03-15 16:16:24 +00:00
Adam Jackson
d8221a9b70 Coverity #484: Fix an off-by-one in module refcounting. 2006-03-15 16:11:34 +00:00
Adam Jackson
6bb2dc02a7 Coverity #337: Remove useless NULL check. 2006-03-15 16:01:47 +00:00
Adam Jackson
1e5c0842af Coverity #1053: Nuke a dead variable. 2006-03-15 15:34:57 +00:00
Benjamin Herrenschmidt
7314d16cde Fix DRIExtensionInit() to not register callbacks when it hasn't been
initialized for the current server generation. Fixes a problem where it
    would use stale private index and blow up in colorful ways if no driver
    called DRIScreenInit() on the second generation (which happens due to a
    bug in radeon that i'll fix separately). Note: clearing the index in
    DRIReset() wouldn't work as DRIReset() is called before the
    CloseScreen() chain
2006-03-15 03:18:42 +00:00
Benjamin Herrenschmidt
02d80a0de9 Make xf86 linear allocator smarter when dealing with alignment constraints
when falling back to X/Y allocations. Fixes various problems of Xv
    allocation failures, notably with "nv" driver.
2006-03-15 03:12:32 +00:00
Eric Anholt
c1601717d5 Add a new migration scheme, "always", which will move pixmaps to their
desired location always (unless they don't fit in FB, in which case
    they all get moved out for software rendering). The default remains as
    before, but can be controlled by the MigrationHeuristic xorg.conf
    option (which is intentionally not documented, as it may be
    short-lived). This is part of the exa-damagetrack work, which appears
    stable in testing with fakexa, unlike the work as a whole.
2006-03-15 01:20:08 +00:00
Eric Anholt
a90cff266c Add more doxygen documentation, including notes on WaitMarker() and
MarkSync() that I noticed were needed while reading the VIA driver.
2006-03-15 00:13:52 +00:00
Eric Anholt
693e42114f Move migration logic to a new function, exaDoMigration(). This is largely a
manual conversion to allow for different migration schemes to be
    implemented reasonably, but does include some minor improvements such
    as accounting for pinned pixmaps not being acceleratable, and for our
    current GetImage and GetSpans not being accelerated.
2006-03-14 21:30:12 +00:00
Eric Anholt
d309054780 Pull code for getting the (0,0) pixel from a pixmap out to a separate
function, since it gets repeated (with bad error handling, in one
    case).
2006-03-14 20:38:06 +00:00
Kristian Høgsberg
01aa209f20 Bail out early if screen doesn't support DRI. 2006-03-14 19:32:27 +00:00
Deron Johnson
0cc34266d6 Updated ChangeLog for my latest composite and xfixes changes. 2006-03-13 22:43:42 +00:00
Deron Johnson
450018f48b Part 3 of 3 (Other parts are in proto and lib) Composite Version 0.3:
CompositeGetOverlayWindow, CompositeReleaseOverlayWindow Xfixes Version
    4.0: XFixesHideCursor, XFixesShowCursor
2006-03-13 21:59:55 +00:00
Kristian Høgsberg
e5956f49b2 First batch of AIGLX fixes from David Reveman.
Add getter for Mesa provider.
Export this for Xgl.
Move resource tracking out of drawable constructor to allow wrapping.
Use corrent reply size #define.
Add this function. (DoGetDrawableAttributes): Fix array length.
2006-03-13 01:54:59 +00:00
Matthieu Herrb
eb63e50d95 Fix build when AIGLX is false. 2006-03-12 17:14:03 +00:00
Eric Anholt
9ed3463450 Improve doxygen formatting, and attempt to clarify the 1:1 ratio of
successful PrepareCopy()s to DoneCopy()s.
2006-03-12 03:04:52 +00:00
Eric Anholt
9a7fba5fd0 Make exaCopyNtoNTwoDir() call DoneCopy() at the end of each string of
consecutive Copy() calls (rather than exactly once at the end of the
    function).
Reviewed by: jbarnes
2006-03-12 03:02:26 +00:00
Kristian Høgsberg
c3342c8000 Merge accel_indirect branch to HEAD. 2006-03-12 00:11:34 +00:00
Alan Coopersmith
b1b731c286 Fix buffer size checks to prevent 2-byte buffer overflows. (Coverity #480,
#481, #482, #483)
2006-03-11 02:43:51 +00:00
Alan Coopersmith
fc0772de36 Add HAS_MMAP for Xvfb
Fix Xvfb option parsing to exit on bad arguments, not just issue error
    messages and continue on. (Coverity #492)
2006-03-11 02:10:14 +00:00
Alan Coopersmith
f2ecbb3018 Pass sizeof the correct buffer to XmuSnprintf. (Coverity #489) 2006-03-11 01:58:32 +00:00
Eric Anholt
d695579848 If fakexa is enabled, create a larger buffer in the Ximage, but keep the
same width/height for front-buffer drawing. The fakexa code then uses
    this extra space for offscreen pixmaps. Note that this tones down the
    absurdity of fakexa's offscreen pixmap alignment requirements (odd
    alignment is too weird, so stick with "24", which is still strange but
    exists out there). It also fixes a couple of bugs in the fakexa
    implementation revealed by using offscreen pixmaps.
2006-03-10 21:36:24 +00:00
Eric Anholt
5b1a7b478f Move the exaDrawableDirty in exaPrepareAccess to exaFinishAccess, which is
after the drawing is done. Previously, a failed PrepareAccess could
    have migrated and cleared the dirty flag before the damage was ever
    done.
2006-03-10 21:32:34 +00:00
Eric Anholt
ffdbb547be Coverity #1011: Remove a useless NULL check on a pVbe that had been
dereferenced many times before.
2006-03-10 08:06:42 +00:00
Eric Anholt
1bc72dce5f Coverity #857: Fix resource leak in error path by freeing earlier. 2006-03-10 08:03:24 +00:00
Eric Anholt
55f677d600 Coverity #813, #814, #815, #816: Fix resource leaks in error paths of
config parsing code.
2006-03-10 07:58:27 +00:00
Eric Anholt
2bd4110549 Document the restriction on PrepareAccess() failure, from discussion with
benh.
2006-03-10 07:45:25 +00:00
Jeremy C. Reed
21dcd03048 Just like FreeBSD, let DragonFly's default mouse Device be /dev/sysmouse
(since /dev/mouse don't even exist by default).
2006-03-10 01:34:45 +00:00
Jeremy C. Reed
9a99afdfb2 Add DragonFly support. (It is like FreeBSD.)
This patch is from DragonFly developer Joerg Sonnenberger and the pkgsrc
    collection.
I tested using /dev/sysmouse with moused using my serial /dev/cuaa0.
2006-03-10 01:22:26 +00:00
Eric Anholt
7a0f7f7398 Coverity #349: Fall back to software early if pSrc->pDrawable is NULL, or
pMask is non-NULL but pMask->pDrawable is NULL. This prevents NULL
    dereferences on gradients and other Pictures which have no pDrawable.
2006-03-09 23:29:44 +00:00
Eric Anholt
8a3ff42abb Commit changes missed in last commit (mis-typed path and didn't notice): Do
a first pass of doxygen documentation of EXA. This removes the
    corresponding pieces of exa-driver.txt, which were becoming stale.
    Hopefully the documentation will stay much more up-to-date this way.
    Many thanks to jbarnes for writing exa-driver.txt which was used a lot
    in writing this documentation.
2006-03-09 23:25:35 +00:00
Eric Anholt
ab35c3fbc1 Do a first pass of doxygen documentation of EXA. This removes the
corresponding pieces of exa-driver.txt, which were becoming stale.
    Hopefully the documentation will stay much more up-to-date this way.
    Many thanks to jbarnes for writing exa-driver.txt which was used a lot
    in writing this documentation.
2006-03-09 23:18:15 +00:00
Matthias Hopf
d8f8bfecce Do Xorg configure checks for Xgl only as well 2006-03-09 14:23:57 +00:00
Eric Anholt
2822cbc1fb Rearrange EXA driver structures so that there's a hope of maintaining ABI
when extending the driver interface. The card and accel structures are
    merged into the ExaDriverRec, which is to be allocated using
    exaDriverAlloc(). The driver structure also grows exa_major and
    exa_minor, which drivers fill in and have checked by EXA
    (double-checking that the driver really did check that the EXA version
    was correct). Removes exaInitCard(), which is replaced by the driver
    filling in the rec by hand, and the exaGetVersion() and related
    EXA_*VERSION which are replaced by always using the XFree86 loadable
    module versioning.
2006-03-09 06:04:07 +00:00
Lars Knoll
65aa33f917 render/picture.c Initialize the format of a source picture to
PICT_a8r8g8b8. Fixes a failure in the gradients test of rendercheck. In
    the long term we could do better by setting the format to something
    without alpha whenever the gradient doesn't contain colors with alpha.
    This triggers a reduction of the over operation to a pure source
    operation.
2006-03-08 06:19:37 +00:00
Eric Anholt
cb5090e8d6 Bug #6150: Do the obvious fix of an insane sanity check in
xf86InitFBManager. (Julio M. Merino Vidal)
2006-03-08 03:32:07 +00:00