vm_phys: Try to clean up NUMA KPIsIt can useful for code outside the VM system to look up the NUMA domainof a page backing a virtual or physical address, specifically whencreating NUMA-aware data
vm_phys: Try to clean up NUMA KPIsIt can useful for code outside the VM system to look up the NUMA domainof a page backing a virtual or physical address, specifically whencreating NUMA-aware data structures. We have _vm_phys_domain() forthis, but the leading underscore implies that it's an internal function,and vm_phys.h has dependencies on a number of other headers.Rename vm_phys_domain() to vm_page_domain(), and _vm_phys_domain() tovm_phys_domain(). Make the latter an inline function.Add _vm_phys.h and define struct vm_phys_seg there so that it's easierto use in other headers. Include it from vm_page.h so thatvm_page_domain() can be defined there.Include machine/vmparam.h from _vm_phys.h since it depends directly onsome constants defined there.Reviewed by: alcReviewed by: dougm, kib (earlier versions)Differential Revision: https://reviews.freebsd.org/D27207
show more ...
Add the MEM_EXTRACT_PADDR ioctl to /dev/mem.This allows privileged userspace processes to find information about thephysical page backing a given mapping. It is useful in applicationssuch as DPD
Add the MEM_EXTRACT_PADDR ioctl to /dev/mem.This allows privileged userspace processes to find information about thephysical page backing a given mapping. It is useful in applicationssuch as DPDK which perform some of their own memory management.Reviewed by: kib, jhb (previous version)MFC after: 2 weeksSponsored by: Juniper Networks, Inc.Sponsored by: Klara Inc.Differential Revision: https://reviews.freebsd.org/D26237
mem: clean up empty lines in .c and .h files
sys/dev: further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 2-Clause license, however the tool Iwas using misidentified many licenses so this was mostly a manual - error
sys/dev: further adoption of SPDX licensing ID tags.Mainly focus on files that use BSD 2-Clause license, however the tool Iwas using misidentified many licenses so this was mostly a manual - errorprone - task.The Software Package Data Exchange (SPDX) group provides a specificationto make it easier for automated tools to detect and summarize well knownopensource licenses. We are gradually adopting the specification, notingthat the tags are considered only advisory and do not, in any way,superceed or replace the license texts.
Remove Giant from /dev/mem and /dev/kmem. It is definitely not neededfor i386, and from the code inspection, nothing in thearm/mips/sparc64 implementations depends on it.Discussed with: imp, nwh
Remove Giant from /dev/mem and /dev/kmem. It is definitely not neededfor i386, and from the code inspection, nothing in thearm/mips/sparc64 implementations depends on it.Discussed with: imp, nwhitehornSponsored by: The FreeBSD FoundationMFC after: 3 weeks
Add new privileges, PRIV_KMEM_READ and PRIV_KMEM_WRITE, used in opening/dev/kmem and /dev/mem (in addition to traditional file permission checks).PRIV_KMEM_READ is different from other PRIV_* check
Add new privileges, PRIV_KMEM_READ and PRIV_KMEM_WRITE, used in opening/dev/kmem and /dev/mem (in addition to traditional file permission checks).PRIV_KMEM_READ is different from other PRIV_* checks in that it's allowedby default.Reviewed by: kib, mckusick
Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set().Compile sys/dev/mem/memutil.c for all supported platforms and remove nowunnecessary dev_mem_md_init(). Consistently defi
Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set().Compile sys/dev/mem/memutil.c for all supported platforms and remove nowunnecessary dev_mem_md_init(). Consistently define mem_range_softc frommem.c for all platforms. Add missing #include guards for machine/memdev.hand sys/memrange.h. Clean up some nearby style(9) nits.MFC after: 1 month
Fix module builds for i386 and amd64.
Add module versions.
Break out the MI part of the /dev/[k]mem and /dev/io drivers intotheir own directory and module, leaving the MD parts in the MDarea (the MD parts _are_ part of the modules). /dev/mem and /dev/ioar
Break out the MI part of the /dev/[k]mem and /dev/io drivers intotheir own directory and module, leaving the MD parts in the MDarea (the MD parts _are_ part of the modules). /dev/mem and /dev/ioare now loadable modules, thus taking us one step further towardsa kernel created entirely out of modules. Of course, there is nothingpreventing the kernel from having these statically compiled.