summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-10-28intel: Add dri_bufmgr_check_aperture support for bufmgr_gem.Eric Anholt
This relies on a new kernel ioctl to get the available aperture size. In order to provide reasonable performance from dri_bufmgr_check_aperture, we now require that once a buffer has been used as the target of a relocation, it gets no further relocations added to it. This cuts the cost of check_aperture from 10% to 1% in the 3D driver with no code changes, but slightly complicates our plans for the 2D driver.
2008-10-28nv50: symlink nv50_grctx.h to linux-core...Ben Skeggs
2008-10-28nv50: move context-related tables a separate header fileBen Skeggs
This turns the various nvXX_graph_init_ctxvals() methods into tables, and speeds up compliation of nv50_graph.c quite a bit. This has bothered me for a while, but others are complaining now so it's time to fix it :)
2008-10-27drm: missing init_mm symbol, compatibility fixPekka Paalanen
The drm_compat.c version of kmap_atomic_prot_pfn() uses the macro pgd_offset_k(), which references the symbol init_mm. Starting in 2.6.25, init_mm is no longer exported by default. The only user of kmap_atomic_prot_pfn() is i915, so this should not hurt anyone, and it allows people to load drm.ko. Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-10-27i915: Since FreeBSD doesn't have gem support yet, don't advertise it.Robert Noland
This allows us to not crash X when using newer Intel ddx drivers.
2008-10-27radeon: fix error in busmaster enable logicAlex Deucher
- logic was wrong. rs400/rs480 should clear the RADEON_BUS_MASTER_DIS bit - should fix kernel bug 11798
2008-10-27radeon: fix some fallout from the busmaster disable cleanupAlex Deucher
rs400 is just like rs480. I mixed up the internal chipset names for rs600 and rs400.
2008-10-25drm/i915: fix ioremap of a user address for non-root (CVE-2008-3831)Matthias Hopf
Olaf Kirch noticed that the i915_set_status_page() function of the i915 kernel driver calls ioremap with an address offset that is supplied by userspace via ioctl. The function zeroes the mapped memory via memset and tells the hardware about the address. Turns out that access to that ioctl is not restricted to root so users could probably exploit that to do nasty things. We haven't tried to write actual exploit code though. It only affects the Intel G33 series and newer.
2008-10-24intel: Also total child_size of the target_bos. Partial fix #17964.Xiang, Haihao
2008-10-23[FreeBSD] We should use dev2unit() rather than minor()Robert Noland
2008-10-23[FreeBSD] This check isn't correct and causes at least mga to lockup.Robert Noland
2008-10-16intel: ioctl is not defined to return -errnoKeith Packard
Don't count on ioctl returning -errno; use errno directly. Signed-off-by: Keith Packard <keithp@keithp.com> Signed-off-by: Eric Anholt <eric@anholt.net>
2008-10-16intel: avoid deadlock in intel_bufmgr_fake.Xiang, Haihao
2008-10-14intel: Fix compile warning.Eric Anholt
2008-10-14intel: Add interface for getting tiling mode of a bo.Eric Anholt
2008-10-13link libdrm_intel properlyJulien Cristau
libdrm_intel needs symbols from libdrm, so link against it.
2008-10-13intel: Avoid pthread mutex recursion in bufmgr_fake.Eric Anholt
Bug #18035. Fixes deadlock in glean texCube testcase.
2008-10-13libdrm: don't depend or link to libdrm_intelDave Airlie
2008-10-10[FreeBSD] Plug memory leak in drm_rmdraw() and drm_drawable_free_all()Robert Noland
2008-10-10[FreeBSD] Rework all of the memory allocationsRobert Noland
Allocate memory from different pools. This allows the OS to track memory allocations for us, much like the linux memory debugging. This will ease tracking down memory leaks since the OS can track the number of allocations from each pool and help to point us in the right direction. Also replace drm_alloc and friends with static __inline__ versions while we are here.
2008-10-09[FreeBSD] Fix linux list compat list_for_each_safe()Robert Noland
linux_for_each_safe would not handle lists with a single entry.
2008-10-09i915: Cleanup interrupt handlingRobert Noland
2008-10-09Manage fences in user-mode bufmgr_fake to clean buffersKeith Packard
When using bufmgr_fake without DRM, the X server idles the ring whenever it wants to wait for something to complete (brutal, but effective). In this case, bufmgr_fake must treat the pending fence as having passed. However, it wasn't recording the fences as it emitted them, nor cleaning buffers as they passed. Signed-off-by: Keith Packard <keithp@keithp.com>
2008-10-09intel: Protect bufmgr objects with a pthread mutex.Eric Anholt
We want to be able to use the bufmgr from multiple threads for GL, and thus we need to protect the internal structures. The pthread-stubs package is used so that programs not linked against pthreads get weak symbols to stubs and don't eat most of the cost.
2008-10-09intel: fix for write_domain and static BOs.Xiang, Haihao
http://bugs.freedesktop.org/show_bug.cgi?id=17705
2008-10-06radeon: add comment to clarify bus mastering on PCIE chipsAlex Deucher
2008-10-06radeon: fix duplicate define in my last commitAlex Deucher
That's what I get for committing at 3 AM.
2008-10-07radeon: PCIE cards don't appear to have explicit bus masterDave Airlie
2008-10-07drm: add create gpu tree scriptDave Airlie
2008-10-06radeon: fix bus master enabled bits on newer asicsAlex Deucher
2008-10-06radeon: fix missing bit from rs740 patchMihail Zenkov
See bug 17908
2008-10-04radeon: Add support for HD2100 IGP (RS740)Alex Deucher
2008-10-03[FreeBSD] Don't explicitly bzero driver softc.Robert Noland
This is already handled for us. Suggested by John Baldwin
2008-10-03[FreeBSD] Use M_WAITOK when allocating driver memory.Robert Noland
We don't explicitly check for error here and M_WAITOK will just put the process to sleep waiting on resources to become available. Suggested by John Baldwin
2008-10-03[FreeBSD] Do a bit of optimization on drm_order()Robert Noland
2008-10-01Use devfs_get_cdevpriv in mmap as well.Robert Noland
d_mmap gets called twice and we are only able to associate the file_priv during the first call. The second call will return EBADF and we need to assume that the call was succesful. d_mmap will not tolerate having an error returned for the second call.
2008-09-27intel: Copy data from card memory back to backing store when mapping.Xiang, Haihao
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=17705
2008-09-23intel: Allow up to 15 seconds chewing on one buffer before acknowledging -EBUSY.Eric Anholt
The gltestperf demo in some cases took over seven seconds to make it through one batchbuffer on a GM965. Bug #17004.
2008-09-23intel: Replace wraparound test logic in bufmgr_fake. Again.Eric Anholt
I'd swapped the operands, so if we weren't in lockstep with the hardware we said the sequence was always passed. Additionally, a race was available that we might have failed at recovering from. Instead, I've replaced the logic with new stuff that should be more robust and not rely on all the parties in userland following the same IRQ_EMIT() == 1 protocol. Also, in a radical departure from past efforts, include a long comment describing the failure modes and how we're working around them. Thanks to haihao for catching the original issue.
2008-09-23intel: Do strerror on errno, not on the -1 return value from ioctl.Eric Anholt
2008-09-22intel: Fix driver-supplied argument to exec function (fd.o bug #17653).Xiang, Haihao
2008-09-17[FreeBSD] Convert to using cdevpriv for file_priv trackingRobert Noland
2008-09-17nv50: add initial context for chipset 0xaaBen Skeggs
This just doesn't look right..
2008-09-17nv50: add initial context to match ctxprog for chipset 0x50Ben Skeggs
2008-09-17nv50: add ctxprog for chipset 0x50Ben Skeggs
2008-09-17nv50: add ctxprog for chipset 0xaaBen Skeggs
2008-09-17nv50: add support for chipset 0x92Ben Skeggs
2008-09-10Remove incomplete and obsolete free/net/open code.vehemens
Signed-off-by: Robert Noland <rnoland@2hip.net>
2008-09-10Add missing \ to libdrm_la_SOURCESEric Anholt
Reported by jcristau.
2008-09-10intel: don't forget to include config.h in bufmgr code.Eric Anholt
Thanks to airlied for catching this.