riastradh
1de22cf52d
i915: Make intel_gtt_get prototype match Linux.
2021-12-19 12:37:36 +00:00
riastradh
d56b2253bd
i915: Omit spurious compile-time assertion.
...
The assertion failed on i386 with our struct drm_fence_callback.
Could change drm_fence_callback to be a little smaller (use the
nullness of the previous pointer instead of a separate boolean to
detect whether it's on the list, perhaps). But it's unclear why the
relative sizes of these members matter; they're in a union. Upstream
commit message doesn't illuminate.
2021-12-19 12:37:28 +00:00
riastradh
ec3875623b
i915: Suppress spurious -Wmaybe-uninitialized warnings.
2021-12-19 12:37:17 +00:00
riastradh
b67564b843
drm: Make resource_size return resource_size_t like Linux.
...
Because Linux uses resource_size_t for absolute bus addresses, it is
actually bus_addr_t rather than bus_size_t. So using bus_size_t here
causes trouble with the i915 range_overflows macro, which verifies
that types match.
2021-12-19 12:37:07 +00:00
riastradh
f05f07337d
amdgpu: Add a cautionary comment about non-LP64 branch.
2021-12-19 12:36:59 +00:00
riastradh
b545a4ab1d
drm: Work around bus_space_read_8 on LP32.
2021-12-19 12:36:50 +00:00
riastradh
ffec59cdef
amdgpu: Fix indexing for 64-bit doorbells.
2021-12-19 12:36:41 +00:00
riastradh
e84ee5d0d2
drm: Must hold event_lock around wait on event_queue.
...
We must not have hit this path before if it never crashed!
2021-12-19 12:36:31 +00:00
riastradh
f5962ff8c1
drm: Spruce up ww_mutex comments. Audit return values.
2021-12-19 12:36:24 +00:00
riastradh
f50ad3b146
i915: Fix destroy/free order for i915 gem stub fence.
2021-12-19 12:36:15 +00:00
riastradh
02f8a9bf39
linux: Fix wait_bit semantics.
...
- wait_on_bit is supposed to wait until the bit is cleared, not set.
- wait_on_bit_timeout is supposed to return 0 on success, -EAGAIN on
faiure.
Omit wake_up_bit; nothing uses it and clear_and_wake_up_bit is a more
semantically coherent operation.
2021-12-19 12:36:08 +00:00
riastradh
05665e3e92
drm: Fix comment about dma_resv_lock_* return values.
2021-12-19 12:36:02 +00:00
riastradh
dfb3b4e2c4
drm: Timeout audit -- linux/sched.h.
2021-12-19 12:35:54 +00:00
riastradh
e88c3a9beb
drm: Timeout audit -- drm_syncobj.c.
2021-12-19 12:35:45 +00:00
riastradh
7ac9711114
linux: Timeout audit -- linux/completion.h.
2021-12-19 12:35:37 +00:00
riastradh
855555b43d
drm: Make sure to initialize syncobj wait point.
2021-12-19 12:35:28 +00:00
riastradh
f806b9e8f5
drm: Use atomic_load_relaxed for fence->flags when not locked.
...
Shouldn't make a semantic difference on any machines we run on, but
will make sanitizers happier and emphasize to readers that the result
may not be reliable at these points.
2021-12-19 12:35:21 +00:00
riastradh
142df71689
i915: Terminate inner loop if we hit end of view.
2021-12-19 12:35:13 +00:00
riastradh
2f64b73f58
i915: Assert output segment index.
2021-12-19 12:35:04 +00:00
riastradh
95ce568468
drm: Assert dma_fence_wait internal return value.
2021-12-19 12:34:58 +00:00
riastradh
e5adb63a63
i915: Tighten assertion about segment index.
2021-12-19 12:34:50 +00:00
riastradh
12b879c5ff
drm: Fix drm_symstr with pserialize.
2021-12-19 12:34:42 +00:00
riastradh
2d599fa8ac
i915: Fix locking-against-self in i915_request_wait.
2021-12-19 12:34:34 +00:00
riastradh
53181dd878
drm/scheduler: Release job list lock arond kthread_parkme.
2021-12-19 12:34:24 +00:00
riastradh
05cdf8b424
drm: Rework timeout return code logic.
2021-12-19 12:34:16 +00:00
riastradh
ae93c5016c
drm: Rework dma_fence_wait_any_timeout.
...
- Yield the first index, not the most recently signalled one.
- Check again after last wakeup.
- Make sure to return positive for nontimeout.
- Handle ip=null.
2021-12-19 12:34:05 +00:00
riastradh
937d5ef992
i915: Fix wakeref destruction.
2021-12-19 12:33:56 +00:00
riastradh
8d670a1f75
drm: Fix semantics of del_timer, del_timer_sync.
2021-12-19 12:33:48 +00:00
riastradh
350b8bc634
drm: Paranoia: handle fencep=null, fence!=null, and 0 shared.
...
Not sure this is possible but I don't know the API well enough to
prove it can't happen.
2021-12-19 12:33:42 +00:00
riastradh
267f4d2ef6
drm: Fix missing restart on race in dma_resv_get_fences_rcu.
2021-12-19 12:33:34 +00:00
riastradh
0c1bf4606d
drm: Another missing spin_lock_destroy.
2021-12-19 12:33:26 +00:00
riastradh
4bc47a456f
amdgpu: call pmap_pv_track/untrack for the graphics aperture.
...
Author: phone <mrg@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19 12:33:19 +00:00
riastradh
6c62068b15
drm: Fix an even number of sign errors in interval_tree_generic.h.
2021-12-19 12:33:11 +00:00
riastradh
3d10c246f0
amdgpu: more destroy fixes.
...
Author: phone <mrg@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19 12:33:02 +00:00
riastradh
32925284a6
drm: Support dma_resv_reserve_shared(..., num_fences>1).
2021-12-19 12:32:53 +00:00
riastradh
8aaf58e590
drm/scheduler: spin_lock_init/destroy audit
2021-12-19 12:32:45 +00:00
riastradh
2a8c33eaff
i915: mutex_init/destroy and spin_lock_init/destroy audit
2021-12-19 12:32:15 +00:00
riastradh
816569f203
drm: mutex_init/destroy and spin_lock_init/destroy audit
2021-12-19 12:32:01 +00:00
riastradh
07eb61ce39
amdgpu: mutex_init/destroy and spin_lock_init/destroy audit
2021-12-19 12:31:45 +00:00
riastradh
90d9c04b90
drm: Implement drm_resv_get_fences_rcu with null fencep.
2021-12-19 12:31:34 +00:00
riastradh
95246dc193
nouveau: Remove post-merge audit comments -- LGTM.
2021-12-19 12:31:26 +00:00
riastradh
25bef1d9d8
nouveau: Map write-combining in instmem/nv40 like Linux does.
2021-12-19 12:31:19 +00:00
riastradh
464621fbdd
drm: Set fence->ops for stub fences too.
2021-12-19 12:31:11 +00:00
riastradh
96323d8388
amdgpu: Call idr_preload(_end) around idr_alloc, outside lock.
2021-12-19 12:31:04 +00:00
riastradh
07191af740
drm: set f_magic in the stub fence.
...
Author: phone <mrg@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19 12:30:56 +00:00
riastradh
311f9dbb25
drm: add destruction.
...
Author: phone <mrg@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19 12:30:47 +00:00
riastradh
058892fa8b
amdgpu: Run module initialization.
2021-12-19 12:30:40 +00:00
riastradh
1b0e394141
drm: Fill in fake connector->kdev pointing at the drm device.
...
Hope this will make progress -- hope it won't screw up too badly if
two connectors have the same kdev!
2021-12-19 12:30:31 +00:00
riastradh
c185307488
drm: Make via build again.
2021-12-19 12:30:23 +00:00
riastradh
96277bfbfc
amdgpu: Disable atomic modeset like upstream does for now.
2021-12-19 12:30:14 +00:00