| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
found the hard way by deraadt@ on sparc64
fix suggested by kettenis@
|
| |
|
|
|
|
| |
ok stsp@ kettenis@
|
|
|
|
| |
with help from cheloha@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
time_second(9) and time_uptime(9) are widely used in the kernel to
quickly get the system UTC or system uptime as a time_t. However,
time_t is 64-bit everywhere, so it is not generally safe to use them
on 32-bit platforms: you have a split-read problem if your hardware
cannot perform atomic 64-bit reads.
This patch replaces time_second(9) with gettime(9), a safer successor
interface, throughout the kernel. Similarly, time_uptime(9) is replaced
with getuptime(9).
There is a performance cost on 32-bit platforms in exchange for
eliminating the split-read problem: instead of two register reads you
now have a lockless read loop to pull the values from the timehands.
This is really not *too* bad in the grand scheme of things, but
compared to what we were doing before it is several times slower.
There is no performance cost on 64-bit (__LP64__) platforms.
With input from visa@, dlg@, and tedu@.
Several bugs squashed by visa@.
ok kettenis@
|
| |
|
| |
|
|
|
|
| |
matches how the interfaces are documented
|
|
|
|
|
|
|
|
|
|
|
|
| |
Linux kernel code often passes errors around as negative numbers cast to
pointers. As rw_enter() returns a errno on failure
mutex_lock_interruptible() negated the return value. But this did not
account for ERESTART being -1 which would return 1 to the caller.
sthen@ periodically hit a uvm_fault() in i915_request_create() which
was caused by attempting to use 1 as a pointer.
ok kettenis@
|
| |
|
| |
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
ok kettenis@
|
|
|
|
| |
ok kettenis@
|
| |
|
|
|
|
|
| |
should fix problem reported by Laurence Tratt on bugs@
tweak and ok kettenis@
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
synchroniation problems when playing youtube videos in chrome.
ok jsg@
|
|
|
|
|
| |
Patch from and commited on behalf of Jonathan Gray (jsg@)
ok kettenis@
|
|
|
|
|
|
|
|
|
| |
They're macros on Linux because they save state in their flags
parameter. Turning them to static inline functions creates a lot
of -Wuninitialized warnings, so just use macros which set their flags
argument.
ok kettenis@
|
|
|
|
|
|
| |
make drm(4) attach to rkdrm(4). This makes KMS work on the RK3399 SoC.
ok patrick@
|
|
|
|
| |
ok jsg@
|
|
|
|
|
|
|
| |
under ifdef for us, so for now we don't support SG tables or the
GEM CMA ops, but at least it lets us create a simple framebuffer.
ok kettenis@
|
| |
|
|
|
|
|
|
| |
TASK_INTERRUPTIBLE (PCATCH) is set in the state argument.
Spotted by and original diff from claudio@. ok claudio@
|
|
|
|
|
|
|
| |
Do not include <sys/kthread.h> where it is not needed and stop including
<sys/proc.h> in it.
ok visa@, anton@
|
|
|
|
|
| |
There is no need for the additional work done by CURSIG().
seems reasonable jsg@
|
|
|
|
|
|
| |
From Jani Nikula
e34d8d2b2e2f49d1aa933a1e5f15d3e9ee9aa54b in linux 4.19.y/4.19.99
bf3f5e98559360661a3d2af340d46522512c0b00 in mainline linux
|
|
|
|
|
| |
Errors at compile time are preferred over being silently broken.
ok kettenis@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
async/SIGIO use likely came from DR1 context swapping for the "gamma"
driver for 3dlabs GMX 2000, removed from the old upstream drm cvs
repository in 2004:
commit 1430163b4bbf7b00367ea1066c1c5fe85dbeefed
Author: Dave Airlie <airlied@linux.ie>
Date: Sun Aug 29 12:04:35 2004 +0000
Drop GAMMA DRM from a great height ...
linux in 2005:
commit 1fad99499afdd2730adb1d53413b91580b1f0662
Author: Dave Airlie <airlied@starflyer.(none)>
Date: Fri Aug 5 22:40:34 2005 +1000
drm: remove the gamma driver
and further remaining async bits removed from linux in 2013 with
commit b0e898ac555e96e7863a5ee95d70f3625f1db5e2
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date: Thu Aug 8 15:41:23 2013 +0200
drm: remove FASYNC support
pointed out by claudio@ ok visa@ kettenis@
|
|
|
|
|
|
| |
From Sean Paul
f015785ae7fbf7a817b74b4001f92ca3070aa718 in linux 4.19.y/4.19.92
268de6530aa18fe5773062367fd119f0045f6e88 in mainline linux
|
|
|
|
| |
ok mpi@
|
|
|
|
| |
ok jsg@
|
|
|
|
| |
ok kettenis@
|
|
|
|
|
|
|
| |
drops graphics buffers that are cached and not in active use.
Help from beck@ for pointing out how to hook this up to our pagedaemon.
ok jsg@
|
|
|
|
|
|
| |
in inteldrm(4).
ok guenther@
|
|
|
|
|
|
| |
track the process (and not the original thread of the process).
ok jsg@ kettenis@
|
| |
|
|
|
|
| |
ok jsg@
|