Home | History | Annotate | Download | only in linux
History log of /src/sys/external/bsd/drm2/linux/linux_kmap.c
RevisionDateAuthorComments
 1.16  27-Aug-2018  riastradh Ifdef out label used only by !__HAVE_MM_MD_DIRECT_MAPPED_PHYS.
 1.15  27-Aug-2018  riastradh Work around `kmap' namespace clash another way.
 1.14  27-Aug-2018  riastradh Work around a namespacing clash between dtrace and linux symbol.
 1.13  27-Aug-2018  riastradh sdt dtrace probes for linux kmap.
 1.12  01-Jan-2015  mrg branches: 1.12.16; 1.12.18;
due to hangs seen by several folks, for now revert:
http://mail-index.netbsd.org/source-changes/2014/11/04/msg060120.html

Log Message:
This code should be MP-safe. Use IPL_SCHED in place of IPL_DRM/IPL_VM and set
D_MPSAFE flag in cdevsw.
 1.11  04-Nov-2014  jmcneill branches: 1.11.2;
This code should be MP-safe. Use IPL_SCHED in place of IPL_DRM/IPL_VM and set
D_MPSAFE flag in cdevsw.
 1.10  27-Aug-2014  riastradh Use direct map if available in linux_kmap.

Yields 20% increase in glxgears framerate.
 1.9  27-Aug-2014  riastradh Tweak style.

No functional change intended. Assembly differences appear to be
only related to kassert line numbers.
 1.8  27-Aug-2014  riastradh __diagused, not __unused.
 1.7  27-Aug-2014  riastradh Assert sleepable in Linux kmap/kunmap.
 1.6  27-Aug-2014  riastradh Simplify empty test for linux_kmap_entries.
 1.5  27-Aug-2014  riastradh Convert linux_kmap_lock to an adaptive lock.

kmap/kunmap can't be used in interrupt context anyway, so there is no
need for this to be a spin lock.
 1.4  28-Mar-2014  riastradh branches: 1.4.4; 1.4.6; 1.4.8; 1.4.10;
Don't leak KVA by forgetting to call uvm_km_free...oops!

From rmind@.
 1.3  28-Mar-2014  riastradh Remove needless splvm/splx calls.

From rmind@, who explained that the pmap(9) man page is wrong.
 1.2  18-Mar-2014  riastradh Merge riastradh-drm2 to HEAD.
 1.1  24-Jul-2013  riastradh branches: 1.1.2;
file linux_kmap.c was initially added on branch riastradh-drm2.
 1.1.2.4  21-Jan-2014  riastradh Call uvm_vm_page_to_phys before taking a spin lock to ease debugging.
 1.1.2.3  08-Sep-2013  riastradh Fix kunmap: unlike kunmap_atomic, it takes a page, not a vaddr.

Unmapping the vaddr where the struct vm_page is stored makes for a
rather confusing state of affairs!
 1.1.2.2  24-Jul-2013  riastradh Implement non-`atomic' kmap/kunmap in drm2 Linux shims.

Uses uvm_km_alloc and pmap_kenter_pa. Does not use direct mappings
on architectures that support this (e.g., amd64).
 1.1.2.1  24-Jul-2013  riastradh Implement Linux alloc_page/__free_page and kmap_atomic/kunmap_atomic.
 1.4.10.3  03-Dec-2017  jdolecek update from HEAD
 1.4.10.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.10.1  28-Mar-2014  tls file linux_kmap.c was added on branch tls-maxphys on 2014-08-20 00:04:22 +0000
 1.4.8.1  21-Sep-2014  snj Pull up following revision(s) (requested by riastradh in ticket #101):
sys/external/bsd/drm2/linux/linux_kmap.c: revisions 1.5-1.10
- Use an adaptive lock where a spin lock is not needed.
- Tweak style.
- Assert sleepable where appropriate.
- Use __diagused, not __unused.
- Use direct map where available.
 1.4.6.2  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.6.1  28-Mar-2014  yamt file linux_kmap.c was added on branch yamt-pagecache on 2014-05-22 11:40:56 +0000
 1.4.4.2  18-May-2014  rmind sync with head
 1.4.4.1  28-Mar-2014  rmind file linux_kmap.c was added on branch rmind-smpnet on 2014-05-18 17:46:01 +0000
 1.11.2.1  06-Apr-2015  skrll Sync with HEAD
 1.12.18.1  10-Jun-2019  christos Sync with HEAD
 1.12.16.1  06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)

RSS XML Feed