| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
|
|
|
|
|
| |
Previously we would initialise a variable specific mutex in
ATOMIC64_INIT() or atomic64_set() but the drm code in multiple places
zeroes memory and later accesses it without calling these resulting
in a mutex with IPL_NONE instead of IPL_HIGH.
Fixes a 'locking against myself' panic reported by Anthony Richardby
on macppc with PowerBook5,6 and RV350.
ok kettenis@
|
|
|
|
|
|
|
|
|
| |
link state changes and an interrupt is fired for that, the MSI-X
interrupt mask bits of the queues are cleared. During init while
the queues are enabled by the driver, the hardware disabled them
in the background. Then receiving packets did not work.
In MSI-X mode, use the FreeBSD logic to read the cause from EICS register.
from Christiano Haesbaert; tested with 82599 and X540T and OK jmatthew@
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Linux rwlocks are read/write spin locks which don't sleep.
Fixes a panic claudio@ reported with a WITNESS kernel on inteldrm(4)
'panic: acquiring blockable sleep lock with spinlock or critical section
held (rwlock) drmvma'
Patch from kettenis@ with a small tweak from me. ok kettenis@
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
|
|
|
| |
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@
|
| |
|
|
|
|
| |
tested by Nilson Lopes
|
|
|
|
|
|
|
| |
on in the attach process with a useless error message.
tested on a ConnectX-6 card in infiniband mode by Nilson Lopes
ok dlg@
|
|
|
|
|
|
|
|
| |
this gets rid of some annoying errors when bringing such an interface
up, but more importantly is allows RSS to work on these boards with
older firmware.
ok jmatthew@
|
|
|
|
| |
apply backpressure to rxrs.
|
|
|
|
| |
ok tobhe@
|
|
|
|
|
|
| |
POWER9 machines.
ok jsg@
|
| |
|
| |
|
|
|
|
|
|
| |
pci "memory space" io. Further reduces the diff to linux.
ok kettenis@
|
|
|
|
|
|
|
| |
the diffs to Linux and makes sure we use memory barriers in the same way
as Linux does.
ok jsg@ (who added the doorbell changes)
|
|
|
|
|
|
|
|
|
|
| |
operations during attach fail on some amd64 systems using the TSC delay
function, seemingly as there aren't enough memory operations happening to
get the doorbell write out to the device otherwise. The lapic delay
function didn't expose this problem.
suggested by kettenis@
ok dlg@
|
|
|
|
| |
OK jmatthew@
|
|
|
|
|
|
|
| |
"I/O Space" on their PCIe host bridges and for most (all) Radeon variants
there is an alternative method to access the relevant registers.
ok jsg@
|
|
|
|
|
|
|
|
|
|
| |
- Reverse byte order on big-endian architectures (except on sparc64)
- Add memory barriers
Note that sparc64 is special as we use a little-endian mapping for
PCI bus space, so we shouldn't reverse the byte order there.
ok jsg@
|
| |
|
| |
|
|
|
|
| |
ok kettenis@
|
|
|
|
|
|
|
| |
"I/O Space" on their PCIe host bridges and for most (all) Radeon variants
there is an alternative method to access the relevant registers.
ok jsg@
|
|
|
|
| |
ok jsg@
|
| |
|
| |
|
|
|
|
|
| |
rename Intel 0xa171
The same id is used by HM175 QM175 CM238 (KBL-H), not just CM238.
|
| |
|
| |
|
| |
|
|
|
|
| |
patch cobbled together with assistance from (and ok) jsg;
|
|
|
|
| |
ok deraadt@
|
|
|
|
|
|
|
| |
This extra data seems to trigger an assertion in the firmware and
the Linux iwlwifi driver does not send this data either.
tested by Nicola Dell'Uomo and jmc@
|
| |
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
reduces the diff to linux 5.7.y
ok kettenis@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Without this boot time tests from setting amdgpu_testing = 1 fail.
For example on Vega 56:
drm: GART: 512M 0x0000000000000000 - 0x000000001FFFFFFF
...
[drm] Tested GTT->VRAM and VRAM->GTT copy for GTT offset 0xa00000
[drm] Tested GTT->VRAM and VRAM->GTT copy for GTT offset 0xb00000
...
[drm] Tested GTT->VRAM and VRAM->GTT copy for GTT offset 0x1fe00000
[drm] Tested GTT->VRAM and VRAM->GTT copy for GTT offset 0x1ff00000
[drm] *ERROR* 0xffff80000135f858 bind failed
Error while testing BO move
ok kettenis@
|
|
|
|
|
|
| |
changes made to Linux 5.7. Pointed out by jsg@.
ok jsg@
|
|
|
|
|
|
|
|
|
| |
the caller of kthread_stop().
The thread should also be unparked as else it will not seen the
KTHREAD_SHOULDSTOP flag. it follows what Linux is doing.
ok kettenis@
|
| |
|
|
|
|
|
| |
Adapt kettenis' amdgpu interval tree replacement functions for the
interval_tree.h functions radeondrm uses on cayman, aruba and GCN.
|
|
|
|
|
| |
to scsi_copy_internal_data(). Thus getting xs->resid properly set and adding the
usual uio/size sanity checks.
|
|
|
|
| |
noticed in renoir dmesg
|
| |
|
|
|
|
|
| |
Print asic name, rev and number of compute units.
Suggested by and ok kettenis@
|