| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
function pointer in ttm_tt_swapout(). Reduces the diff to linux.
ok kettenis@
|
|
|
|
|
|
|
|
| |
Avoids a double free of gtt in amdgpu_ttm_tt_create() if the
bus_dmamap_create() call in ttm_sg_tt_init() fails and ttm_tt_destroy()
calls amdgpu_ttm_backend_destroy().
feedback from and ok kettenis@
|
|
|
|
|
|
|
|
|
|
| |
Gives rwlocks defined this way a non-NULL rwl_name.
Move ttm_pool_shrink_scan() DEFINE_MUTEX use out of function scope to fix
build with WITNESS after this change and expand macro to have a better
name than "lock".
Found by and ok semarie@
|
|
|
|
|
|
|
|
|
| |
It won't be used when amap and anon locking will be introduced.
This "fixes" passing a unrelated/uninitialized pointer in an error path
in case of memory shortage.
ok kettenis@
|
|
|
|
|
|
|
|
|
| |
While here put some KERNEL_ASSERT_LOCKED() in the functions called from
the page fault handler. The removal of locking of `uobj' will need to be
revisited and these are good indicator that something is missing and that
many comments are lying.
ok kettenis
|
|
|
|
|
|
| |
changes made to Linux 5.7. Pointed out by jsg@.
ok jsg@
|
|
|
|
|
|
| |
From Felix Kuehling
be580abecf13ebdcf6c16ec79d941c35017c94be in linux 5.7.y/5.7.18
c0001213d195d1bac83e0744c06ff06dd5a8ba53 in mainline linux
|
|
|
|
|
|
| |
From Dave Airlie
7387ad86fe8ef830e88a586b021b322eef316211 in linux 5.7.y/5.7.16
5de5b6ecf97a021f29403aa272cb4e03318ef586 in mainline linux
|
|
|
|
|
|
| |
From Xiyu Yang
bfd4297fd74ebb18d05044e49f1ff2fedd2ece8d in linux 5.7.y/5.7.9
11425c4519e2c974a100fc984867046d905b9380 in mainline linux
|
|
|
|
|
|
| |
From Xiyu Yang
f5e6ec57e3cbe37cd3ef52d18de6be9953ee105a in linux 5.7.y/5.7.9
37cc4b95d13f311c04aa8e9daacca3905ad45ca7 in mainline linux
|
|
|
|
|
|
|
|
|
| |
brings in changes from
'drm/ttm: stop always moving BOs on the LRU on page fault'
5d50fcbda7b0acd301bb1fc3d828df0aa29237b8
and some other minor changes
ok kettenis@
|
|
|
|
|
|
|
|
| |
In drm linux spinlocks are mapped to mutex(9). Locks without calls to
spin_lock_irqsave(), spin_lock_irq() and the like (which block
interrupts) can be changed to IPL_NONE.
ok kettenis@
|
|
|
|
|
|
|
| |
In linux kunmap() has a page struct * argument our kunmap() has a void *
argument which results in uncoverted uses building but doing the wrong
thing. Renaming will catch any codepaths that need to be changed at
compile time.
|
|
|
|
|
|
|
|
|
|
| |
adds kernel support for
amdgpu: vega20, raven2, renoir, navi10, navi14
inteldrm: icelake, tigerlake
Thanks to the OpenBSD Foundation for sponsoring this work, kettenis@ for
helping, patrick@ for helping adapt rockchip drm and many developers for
testing.
|
|
|
|
|
|
|
|
| |
issues and suspend/resume on amdgpu(4). Might help radeondrm(4) issues
as well.
tested by mortimer@, abieber@, krw@
ok jsg@
|
|
|
|
|
|
| |
From Christian Koenig
8c2cdfb2c81bb533b9e6a3874ee5399102c4c580 in linux 4.19.y/4.19.97
453393369dc9806d2455151e329c599684762428 in mainline linux
|
|
|
|
|
|
| |
From Christian Koenig
83a88fb92950ef34b9924c39ff7554ae92c9af69 in linux 4.19.y/4.19.97
ac1e516d5a4c56bf0cb4a3dfc0672f689131cfd4 in mainline linux
|
|
|
|
| |
ok kettenis@
|
|
|
|
| |
ok kettenis@
|
|
|
|
|
|
| |
From Thomas Hellstrom
11377c3e997eca9c9ff562fc4fc7a41a455bddf6 in linux 4.19.y/4.19.81
941f2f72dbbe0cf8c2d6e0b180a8021a0ec477fa in mainline linux
|
|
|
|
| |
ok kettenis@
|
|
|
|
| |
to avoid running out of kmem space. Suggested by and ok kettenis@
|
|
|
|
|
|
|
|
|
| |
64-bit DMA. Should reduce the pressure on DMA-reachable memory, which is
important since there are still cases where the pagedaemon ends up being
triggered continuously if we run out of DMA-reachable memory but have
plenty of memory left.
ok jsg@
|
|
|
|
|
|
| |
From Christian Koenig
96800ba9e565ab752774cd88328f96aed28a1436 in linux 4.19.y/4.19.37
a66477b0efe511d98dde3e4aaeb189790e6f0a39 in mainline linux
|
|
|
|
|
|
| |
From Trigger Huang
b10cc08374728ea79555a1cd98f962b0f942e942 in linux 4.19.y/4.19.36
30f33126feca0fe16df9e9302ffc28a953e2eb37 in mainline linux
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
linux 4.19.34.
Adds support for more Intel hardware:
Broxton/Apollo Lake (was is_preliminary in 4.4)
Amber Lake (another Kaby Lake refresh)
Gemini Lake
Coffee Lake
Whiskey Lake
Cannon Lake (though no hardware with Intel graphics ever shipped)
Ice Lake (alpha support, hardware not released)
This does not add support for new radeon hardware on the AMD side as
newer radeons have a different kernel driver (amdgpu).
Thanks to the OpenBSD Foundation for sponsoring this work, kettenis@ for
helping and a bunch of other developers for testing.
|
|
|
|
|
|
|
|
|
| |
memory attribute and uncached translates into device-nGnRnE memory. This
complicates the mapping onto PMAP_WC, PMAP_NOCACHE and PMAP_DEVICE a bit
since the requirements of the drm(4) subsystem don't quite match the natural
definitions for these.
ok jsg@, mpi@, visa@
|
|
|
|
|
| |
which was partly missed when the 4.4 ttm changes went in.
Prompted by a patch from kettenis@
|
|
|
|
|
|
|
| |
Compared to the previous Linux 3.8 based port this adds support for
KAVERI/KABINI/MULLINS APUs and OLAND/BONAIRE/HAINAN/HAWAII GPUs.
Thanks to the OpenBSD Foundation for sponsoring this work.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Skylake and Cherryview and better support for Broadwell and Valleyview. Also
adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it
working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
|
|
|
| |
ok jsg@
|
|
|
|
|
|
|
| |
the vma offset manager. This brings us a little bit more isolation between
applications as GEM buffers are now tied to a specific /dev/drmX clone.
ok jsg@
|
|
|
|
|
|
|
|
|
|
|
| |
used (ttm bo's have their own reference counts), we can't let the reference
count go negative as this will freak out the upper uvm layers. Since the
uvm_object reference count is still a useful debugging tool (ddb will display
it for example), adjust it such that the uvm_object reference count represents
the number of references held by the uvm layer.
tested by matthieu@
ok jsg@
|
|
|
|
|
|
|
| |
powerpc doesn't actually implement write-combining fall back to uncached
mappings.
ok mpi@, jsg@
|
|
|
|
|
|
| |
linux kref/kobject use.
ok kettenis@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y
branch of the linux-stable tree). This brings preliminary support for
the GPU on Intel's Broadwell CPUs. Don't expect these to work
perfectly yet. There are some remaining issues with older hardware as
well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains
based on Linux 3.8 with some minimal canges to adjust to changes in
the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm
core bits. Committing this early to make sure it gets more testing
and make it possible for others to help getting the remaining wrinkles
straightened out.
|
|
|
|
|
|
| |
diff to linux.
ok kettenis@
|
| |
|
|
|
|
| |
used instead of bus_space_read/bus_space_write.
|
|
|
|
| |
better matches linux behaviour
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
kernel_map/uvm_km_valloc and i915 has a version that uses
phys_map/uvm_km_valloc_wait as calling code assumes kmap would
sleep if no memory is available.
Move these and ttm's vmap/vunmap into the linux compat files
and make them all use phys_map/uvm_km_valloc_wait.
looks good kettenis@
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
copy_to_user and copy_from_user functions into drm_linux.h and uses them
instead of copyin/copyout and DRM_COPY_*. Also move the timespec functions,
and put i915_gem_object_is_purgable() where it belongs.
Uncovered a bug where the arguments to copyout() were in the wrong order.
ok jsg@
|
|
|
|
| |
This code is not called.
|