summaryrefslogtreecommitdiff
path: root/sys/external/bsd/common/include
AgeCommit message (Collapse)Author
2023-02-25linux asm/barrier.h: Fix !MULTIPROCESSOR build.riastradh
2023-02-24drm: Eliminate __HAVE_ATOMIC_AS_MEMBAR conditionals.riastradh
Discussed on tech-kern: https://mail-index.netbsd.org/tech-kern/2023/02/23/msg028729.html
2022-10-25linux asm/vmware.h: Fill this in with hypercall asm.riastradh
Not sure if it's necessary to support vmcall or vmmcall -- if so, need to deal with binary patching inline asm, ugh.
2022-10-25linux asm/uaccess.h: strncpy_from_userriastradh
(which does not actually have strncpy semantics, naturally, from what I can gather)
2022-10-25linux/frame.h: STACK_FRAME_NON_STANDARDriastradh
2022-10-25linux/kernel.h: S16_MIN, S32_MIN, S64_MINriastradh
2022-10-25linux/dmapool.h: Start filling out stubs.riastradh
2022-10-25linux/export.h: Side-load linux/stringify.h.riastradh
Expected by some users.
2022-07-29drm: Reduce verbosity of drm kernel messages.riastradh
2022-07-19linux: Add alpha definitions of mb/wmb/rmb too for fun.riastradh
Who wants to plug an amdgpu into their alpha?
2022-07-19linux: Clarify error message in asm/barrier.h. Not just for drm.riastradh
2022-07-19linux: Add mips definitions for mb, wmb, rmb.riastradh
2022-07-19linux: Use dsb(sy/st/ld) from arm/cpufunc.h for mb/wmb/rmb.riastradh
Works on more Arm CPU types this way. From skrll.
2022-07-17drm: Fix missing barrier definitions on arm.riastradh
The definition will work on armv7; don't think we have any drmkms drivers on armv<7.
2022-07-17drm: Comment *mb() vs smp_*mb() and omit default for *mb().riastradh
In general membar_*() is _not_ enough for *mb(), because membar_*() is only for CPU/CPU synchronization on normal memory, and *mb() requires machine-dependent I/O logic. Leave it as an `#error' case if the architecture isn't listed here. But membar_*() is OK for smp_*(). Fill in powerpc and sparc while here, as examples of what the now-removed defaults failed to do. If you want to use drm on a mips or alpha system yer gonna hafta fill this in yourself.
2022-07-17linux: Add missing symbol namespacing for tasklet, sync_file.riastradh
2022-07-17linux/compiler.h: Add missing barriers in READ_ONCE, WRITE_ONCE.riastradh
2022-04-09linux: Convert various API shims to use membar_release/acquire.riastradh
2022-02-17drm/vmwgfx: First draft. Passes make depend, doesn't build yet.riastradh
2021-12-27linux: Define mb/wmb/rmb as mfence/sfence/lfence on i386 too.riastradh
Not the same as membar_*; drm uses mb to order special instructions like clflush which require mfence for ordering.
2021-12-22Reduce code duplication: kmem_cache_create() is now exactly the same asthorpej
kmem_cache_create_dtor() except for the dtor argument, so implement the former in terms of the latter.
2021-12-22Do the last change differently:thorpej
Instead of having a pre-destruct hook, put knowledge of passive serialization into the pool allocator directly, enabled by PR_PSERIALIZE when the pool / pool_cache is initialized. This will guarantee that a passive serialization barrier will be performed before the object's destructor is called, or before the page containing the object is freed back to the system (in the case of no destructor). Note that the internal allocator overhead is different when PR_PSERIALIZE is used (it implies PR_NOTOUCH, because the objects must remain in a valid state). In the DRM Linux API shim, this allows us to remove the custom page allocator for SLAB_TYPESAFE_BY_RCU.
2021-12-21- For kmem_cache_create_dtor(), use a pre-destructor to issue thethorpej
synchronize_rcu() if the caller uses SLAB_TYPESAFE_BY_RCU. A special pool allocator is not required in this case. - Now that SLAB_TYPESAFE_BY_RCU does the right thing, no need to call synchronize_rcu() in __i915_request_dtor().
2021-12-19linux: Timeout audit -- linux/completion.h.riastradh
2021-12-19linux: For uniprocessor, define smp_*mb as __insn_barrier.riastradh
Otherwise ordering might not be guaranteed in the event of preemption. XXX pullup
2021-12-19linux: Eliminate read_barrier_depends, smp_read_barrier_depends.riastradh
These no longer exist in Linux; instead, Linux now uses READ_ONCE.
2021-12-19linux: Define mb/wmb/rmb for x86.riastradh
These are _not_ SMP barriers; on Linux they specifically mean mfence/sfence/lfence. Although membar_sync and mb agree, and membar_consumer and rmb agree, membar_producer and wmb _do not_ agree on x86 -- Linux's wmb is specifically sfence, which is important only for unusual memory types, whereas our membar_producer is limited to ordinary memory.
2021-12-19linux: wait_for_completionriastradh
2021-12-19linux: Allow non-VLA structs in struct_size.riastradh
Upstream sometimes uses struct foo { int x; short y[1]; }; instead of short y[] with struct_size.
2021-12-19linux: Side-load linux/overflow.h in linux/slab.h.riastradh
2021-12-19linux: Move linux/overflow.h from drm2 to common.riastradh
Needed so linux/slab.h can side-load it.
2021-12-19linux: Allow GFP_NOWAIT too.riastradh
2021-12-19linux: Make WARN_ONCE actually happen only once.riastradh
2021-12-19linux: Use kmem directly for Linux kmalloc.riastradh
Take advantage of this to do LOCKDEBUG_MEM_CHECK at the point of kfree_rcu rather than in the RCU GC thread.
2021-12-19amdgpu_fb.criastradh
amdgpu_fence.c amdgpu_gart.c amdgpu_fixpt31_32.c amdgpu_fiji_smumgr.c amdgpu_gem.c amdgpu_gfx_v10_0.c amdgpu_gfx_v6_0.c through amdgpu_gfx_v9_0.c amdgpu_gmc.c amdgpu_gmc_v6_0.c through amdgpu_gmc_v10_0.c amdgpu_gtt_mgr.c some amdgpu_h* files some amdgpu_i* files some amdgpu_j* files amdgpu_kms.c some amdgpu_m* and amdgpu_n* files
2021-12-19amdgpu: amdgpu_gfx.criastradh
...plus a bogus stub for sscanf, hoping it's not that important
2021-12-19i915: Defer destroying request lock and fence until page destruction.riastradh
2021-12-19kmem_cache is used at IPL_VMriastradh
Author: Maya Rashish <maya@NetBSD.org> Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19Fix inverted notion of whether to wait for allocationriastradh
Author: Maya Rashish <maya@NetBSD.org> Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19Make intel_psr.c buildriastradh
netbsd-ify Stub out intel_lpe_audio.c (for now?). Hammer intel_opregion.c into shape. Hack up intel_lrc.c Adapt intel_reset.c Stub out intel_region_lmem.c Adapt intel_ring_submission.c Adapt intel_rps.c Adapt intel_sdvo.c Adapt intel_runtime_pm.c Adapt intel_sideband.c Adapt intel_sprite.c Adapt intel_tv.c Adapt intel_tc.c Adapt intel_sseu.c Adapt intel_timeline.c Adapt intel_uc_fw.c and fix typo Fix up intel_uncore.c intel_vga.c intel_wakeref.c intel_vdsc.c intel_wopcm.c intel_workarounds.c i915_globals.c Fix up intelfb.c Stub out intel_guc_log.c Stub out intel_dsi_dcs_backlight.c i915_perf.c intel_hdmi.c intel_hdcp.c Author: Maya Rashish <maya@NetBSD.org> Committer: Taylor R Campbell <riastradh@NetBSD.org>
2021-12-19linux/workqueue: Draft queue_rcu_work.riastradh
2021-12-19i915: more workriastradh
2021-12-19i915: hack hack hackriastradh
2021-12-19i915: another whack at itriastradh
2021-12-19i915: More progress.riastradh
2021-12-19linux/list.h: Add list_safe_reset_next.riastradh
2021-12-19linux: might_sleep_ifriastradh
2021-12-19linux: Add cond_synchronize_rcu.riastradh
2021-12-19drm: Another pass over i915. Most of i915 gem builds now.riastradh
2021-12-19linux: rcu_replace_pointerriastradh