summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-01-09intel: add sprite ioctl defines and struct for i915 sprite codeHEADmasterJesse Barnes1-0/+36
2012-01-06configure: Bump version for 2.4.302.4.30Eric Anholt1-1/+1
2012-01-04intel: Update for new i915_drm.h defines.Eric Anholt1-1/+5
2012-01-04intel: Add regression tests for batch decode.Eric Anholt19-0/+3872
The .batch was generated using the dump-a-batch branch of git://people.freedesktop.org/~anholt/mesa using glxgears on gen7 hardware, using INTEL_DEVID_OVERRIDE for non-gen7 (this means that offsets in the buffers for non-gen7 are 0!). The .ref was generated by: ./test_decode tests/gen7-3d.batch -dump. The .sh exists because you can't supply arguments to tests using the simple automake tests driver. Something reasonable could be done using automake's parallel-tests driver (in fact, a previous version of the patch did that), but I was concerned that: 1) The parallel-tests driver is documented to be unstable -- they may change interfaces on us later. 2) The parallel-tests driver hides the output of tests in .log files scattered all over the tree, which was ugly and more painful to work with. v2: Actually add the batch files, add a .gitignore for the *-new.txt files added after failures, and fix failure mode for undetected chipset name. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> (v1)
2012-01-04intel: Add a regression test program for intel_decode.c.Eric Anholt4-0/+198
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-01-04intel: Add an interface for setting the output file for decode.Eric Anholt2-2/+14
Consumers often want to choose stdout vs stderr, and for testing I want to output to an open_memstream file. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-12-30intel/intel_decode.c: Remove #include "intel_decode.h".Johannes Obermayr1-1/+0
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
2011-12-29intel: Disable unused decode_logic_op().Eric Anholt1-0/+2
It was producing an unused code warning. I'm tempted to just remove it, since it's unused, but I *might* use it soon. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Turn on normal warnings for intel_decode.c build.Eric Anholt1-11/+2
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Remove c99ish variable declarations.Eric Anholt1-3/+5
I'd rather be able to use c99 variable declarations (there's a lot of awful code layout due to being c90ish), but I'll leave that for later. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Fix printf format warnings for intel_decode.Eric Anholt1-9/+7
There was plenty of dropped useful data, and some horribly mis-formatted data. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Add printflike warnings for instr_out.Eric Anholt1-0/+4
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Fix a ton of signed vs unsigned and const char *warningsEric Anholt1-49/+57
We've got a different (better) set of warning flags in place in this tree. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Fix Wsigned-compare warnings (soon to be enabled).Eric Anholt1-27/+28
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Get intel_decode.c minimally building.Eric Anholt3-23/+123
My plan is to use this drm_intel_dump_batchbuffer() interface for the current GPU tools, and the current Mesa batch dumping usage, while eventually building more interesting interfaces for other uses. Warnings are currently suppressed by using a helper lib with CFLAGS set manually, because the code is totally not ready for libdrm's warnings setup. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Minor style tweaks after Lindent.Eric Anholt1-167/+172
Some comments weren't wrapped, and for some reason uint32_t *data got an extra space (while other instances of "type *identifier" didn't), and the indentation of the opcode-list structs got trashed. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Reformat intel_decode.c from intel-gpu-tools using Lindent.Eric Anholt1-2557/+3215
We generally go for kernel style in this tree, and this 4-space indent stuff was bothering me. The new results have some ugly bits, but they're in places where we desperately want to be using helper functions anyway. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: intel: Add IS_GEN[567] macros.Eric Anholt1-1/+37
These will be used by intel_decode.c, and were taken from intel-gpu-tools. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Make intel_chipset handle devid directly.Eric Anholt2-43/+46
This will make these macros reusable from intel_decode.c, which doesn't have a bufmgr_gem context, without faking the struct. We should generally only be using these macros from bufmgr_gem context setup anyway. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-29intel: Import intel_decode.c from intel-gpu-tools.Eric Anholt1-0/+2931
This is from commit dd9a5b4f7fb07c78db4e7481bedca1b981030e3f. We've been sharing this file between that repo and Mesa, and it's time to build a real interface using it. I'm also hoping to apply some of its packet-walking logic for AUB dumping and batch validation purposes. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Eugeni Dodonov <eugeni@dodonov.net>
2011-12-18tests/gem_flink: Check for MASTER before proceedingChris Wilson1-1/+6
gem_flink|gem_open are DRM_AUTH ioctl, and being lazy we do not establish ourselves as authenticated before testing the ioctls. So instead of aborting, skip the test unless we have root privileges (and so DRM_MASTER and the DRM_AUTH restriction no longer applies). A future test could assert that the flink fails without proper authentication. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43924 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-14intel: Reset vma list upon purgeChris Wilson1-1/+1
During free we unconditionally delete the bo from the vma cache. This relies on the its list member being kept in a sane state. This fails after the object is purged, as the purge operation performs a pure deletion and doesn't reset the list member, leaving a pair of dangling pointers. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-13libdrm: update drm headers from kernel, including new overlay ioctls & structsJesse Barnes6-0/+385
Add structs and functions necessary for the new plane and fb handling code, including a new header, drm_fourcc.h, that includes the surface formats supported by various DRM drivers. Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2011-12-13configure: Bump version for 2.4.292.4.29Chris Wilson1-1/+1
Yet another release required for new API
2011-12-13intel: Remove the fresh assertions used to debug the vma cacheingChris Wilson1-6/+12
Hopefully all the bugs in the callers have been found, so time to handle the failures "gracefully" again. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-13intel: Update map-count for an early error return during mappingChris Wilson1-0/+2
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-06intel: Evict cached VMA in order to make room for new mappingsChris Wilson1-16/+24
As the max number of VMA mappings is a hard per-process limit, we need to include the number of currently active mappings when evicting in order to make room for a new mmap. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-05intel: Add an interface to limit vma cachingChris Wilson2-21/+99
There is a per-process limit on the number of vma that the process can keep open, so we cannot keep an unlimited cache of unused vma's (besides keeping track of all those vma in the kernel adds considerable overhead). However, in order to work around inefficiencies in the kernel it is beneficial to reuse the vma, so keep a MRU cache of vma. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-05test/radeon: add missing files for distDave Airlie1-0/+2
2011-12-05intel: Clean up mmaps on freeing the bufferChris Wilson1-0/+14
As a precautionary measure munmap on buffer free so that we never leak the vma. Also include a warning during debugging. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-05configure: Bump version to 2.4.282.4.28Chris Wilson1-1/+1
So that we can pull a couple of Intel bug fixes into xf86-video-intel. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-05intel: Unmap buffers during drm_intel_gem_bo_unmapChris Wilson1-6/+21
We cannot afford to cache the vma per open bo as this may exhaust the per-process limits. References: https://bugs.freedesktop.org/show_bug.cgi?id=43075 References: https://bugs.freedesktop.org/show_bug.cgi?id=40066 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-04intel: limit aperture space to mappable area on gen3Daniel Vetter1-0/+8
Otherwise we blow up on heavy tiled blitter loads (with giant pixmaps). Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-11-27nouveau: Mark nouveau subchannel unbound nouveau_grobj_freeMaarten Lankhorst1-1/+2
Valgrind throws warns about a user-after-free if you try to bind a new subchannel after the old one in that slot was freed, so remove it from the channel list. Signed-off-by: Maarten Lankhorst <m.b.lankhorst@gmail.com>
2011-11-10tests/radeon: radeon specific testJerome Glisse7-0/+450
Initial test only include ttm test for stressing ttm memory allocations. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2011-11-01Fix compilation with -Werror=int-to-pointer-cast -Werror=pointer-to-int-castJeremy Huddleston1-4/+4
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-10-29configure: version bump for 2.4.27 release.2.4.27Eric Anholt1-1/+1
Push the new Intel API for use by mesa. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-10-29intel: Share the implementation of BO unmap between CPU and GTT mappings.Eric Anholt1-15/+5
Before this, consumers of the libdrm API that might map a buffer either way had to track which way was chosen at map time to call the appropriate unmap. This relaxes that requirement by making drm_intel_bo_unmap() always appropriate. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-10-29intel: Don't call the SW_FINISH ioctl unless a CPU-mapped write was done.Eric Anholt1-9/+21
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-10-29intel: Remove stale comment.Eric Anholt1-3/+0
This used to be next to some map refcounting code, but that is long dead. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-10-28intel: Add an interface for removing relocs after they're added.Eric Anholt2-0/+44
This lets us replace the current inner drawing loop of mesa: for each prim { compute bo list if (check_aperture_space(bo list)) { batch_flush() compute bo list if (check_aperture_space(bo list)) { whine_about_batch_size() fall back; } } upload state to BOs } with this inner loop: for each prim { retry: upload state to BOs if (check_aperture_space(batch)) { if (!retried) { reset_to_last_prim() batch_flush() } else { if (batch_flush()) whine_about_batch_size() goto retry; } } } This avoids having to implement code to walk over certain sets of GL state twice (the "compute bo list" step). While it's not a performance improvement, it's a significant win in code complexity: about -200 lines, and one place to make mistakes related to aperture space instead of N places to forget some BO we should have included. Note how if we do a reset in the new loop , we immediately flush. We don't need to check aperture space -- the kernel will tell us if we actually ran out of aperture or not. And if we did run out of aperture, it's because either the single prim was too big, or because check_aperture was wrong at the point of setting up the last primitive. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-10-28intel: Use stdbool.h for dealing with boolean values.Eric Anholt1-32/+33
A few of the bitfield-based booleans are left in place. Changing them to "bool" results in the same code size, so I'm erring on the side of not changing things. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2011-10-19nouveau: free in error path if drmAvailable fails.Dave Airlie1-1/+3
This was reported in coverity. Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-10-19modetest: Call dirty fb on modesetJakob Bornecrantz1-0/+4
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
2011-10-19modetest: Print extra info if we fail to create a framebufferJakob Bornecrantz1-1/+2
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
2011-10-19modetest: Check error message from pageflip ioctlJakob Bornecrantz1-2/+6
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
2011-10-19vbltest: Check error codes returned from libdrmJakob Bornecrantz1-4/+16
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
2011-10-19tests: Add vmwgfx driver to probed drivers in testsJakob Bornecrantz2-2/+2
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
2011-10-11modetest: use 24 bit depth on the framebufferJesse Barnes1-1/+1
It's more compatible; at least the Intel driver now rejects 32 bit depths since it generally can't support real 32 bit framebuffers (supports 30, 36, and 64 bit, but not 32).
2011-09-26drmtest: make check should fail so hard on unable to open deviceDave Airlie1-4/+7