Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1 |
|
#
28832674 |
| 08-Mar-2020 |
Sascha Wildner <saw@online.de> |
libkvm: No need to include <sys/proc.h> when <sys/user.h> is included.
|
Revision tags: v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3 |
|
#
40209b5b |
| 11-Nov-2019 |
zrj <rimvydas.jasinskas@gmail.com> |
cpu/x64_64: Move MMU page table types back to <cpu/pmap.h>.
Reduce namespace pollution. These types are common for both pc64/vkernel64 and are used in pmap context only. All userland cases need
cpu/x64_64: Move MMU page table types back to <cpu/pmap.h>.
Reduce namespace pollution. These types are common for both pc64/vkernel64 and are used in pmap context only. All userland cases need just VM_MAX_USER_ADDRESS, PS_STRINGS constants through <machine/vmparam.h> with huge cpp expansion that requires <machine/pmap.h> header inclusion anyway. Simplify it.
* Hard-code NPTEPG/NPDEPG/NPDPEPG/NPML4EPG constants to properly solve header inclusion ordering. The SHIFT constants are hard-coded already (log2() values) so there are no reasons to pretend everything will adjust automatically. * Use LU suffixes, debug printf() in vkernel64 use %ld types. * Optionally reorder includes in libc setproctitle.c. * Optionally add explicit includes in libkvm where pmap.h is only coming from <sys/user.h>. The kvm_*_x86_64.c use X86_PG_* constants.
For now keep PDESIZE/PTESIZE (used in pc64 genassym.c).
No intermediates differences observed.
show more ...
|
Revision tags: v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2 |
|
#
f042963a |
| 06-Apr-2019 |
zrj <rimvydas.jasinskas@gmail.com> |
libkvm: Fix -Wshadow warnings for gcc47.
|
#
9b52fe00 |
| 06-Apr-2019 |
zrj <rimvydas.jasinskas@gmail.com> |
libkvm: Always use local kvm.h header.
|
Revision tags: v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0 |
|
#
a86ce0cd |
| 20-Sep-2013 |
Matthew Dillon <dillon@apollo.backplane.com> |
hammer2 - Merge Mihai Carabas's VKERNEL/VMM GSOC project into the main tree
* This merge contains work primarily by Mihai Carabas, with some misc fixes also by Matthew Dillon.
* Special note on G
hammer2 - Merge Mihai Carabas's VKERNEL/VMM GSOC project into the main tree
* This merge contains work primarily by Mihai Carabas, with some misc fixes also by Matthew Dillon.
* Special note on GSOC core
This is, needless to say, a huge amount of work compressed down into a few paragraphs of comments. Adds the pc64/vmm subdirectory and tons of stuff to support hardware virtualization in guest-user mode, plus the ability for programs (vkernels) running in this mode to make normal system calls to the host.
* Add system call infrastructure for VMM mode operations in kern/sys_vmm.c which vectors through a structure to machine-specific implementations.
vmm_guest_ctl_args() vmm_guest_sync_addr_args()
vmm_guest_ctl_args() - bootstrap VMM and EPT modes. Copydown the original user stack for EPT (since EPT 'physical' addresses cannot reach that far into the backing store represented by the process's original VM space). Also installs the GUEST_CR3 for the guest using parameters supplied by the guest.
vmm_guest_sync_addr_args() - A host helper function that the vkernel can use to invalidate page tables on multiple real cpus. This is a lot more efficient than having the vkernel try to do it itself with IPI signals via cpusync*().
* Add Intel VMX support to the host infrastructure. Again, tons of work compressed down into a one paragraph commit message. Intel VMX support added. AMD SVM support is not part of this GSOC and not yet supported by DragonFly.
* Remove PG_* defines for PTE's and related mmu operations. Replace with a table lookup so the same pmap code can be used for normal page tables and also EPT tables.
* Also include X86_PG_V defines specific to normal page tables for a few situations outside the pmap code.
* Adjust DDB to disassemble SVM related (intel) instructions.
* Add infrastructure to exit1() to deal related structures.
* Optimize pfind() and pfindn() to remove the global token when looking up the current process's PID (Matt)
* Add support for EPT (double layer page tables). This primarily required adjusting the pmap code to use a table lookup to get the PG_* bits.
Add an indirect vector for copyin, copyout, and other user address space copy operations to support manual walks when EPT is in use.
A multitude of system calls which manually looked up user addresses via the vm_map now need a VMM layer call to translate EPT.
* Remove the MP lock from trapsignal() use cases in trap().
* (Matt) Add pthread_yield()s in most spin loops to help situations where the vkernel is running on more cpu's than the host has, and to help with scheduler edge cases on the host.
* (Matt) Add a pmap_fault_page_quick() infrastructure that vm_fault_page() uses to try to shortcut operations and avoid locks. Implement it for pc64. This function checks whether the page is already faulted in as requested by looking up the PTE. If not it returns NULL and the full blown vm_fault_page() code continues running.
* (Matt) Remove the MP lock from most the vkernel's trap() code
* (Matt) Use a shared spinlock when possible for certain critical paths related to the copyin/copyout path.
show more ...
|
Revision tags: v3.4.3 |
|
#
dc71b7ab |
| 31-May-2013 |
Justin C. Sherrill <justin@shiningsilence.com> |
Correct BSD License clause numbering from 1-2-4 to 1-2-3.
Apparently everyone's doing it: http://svnweb.freebsd.org/base?view=revision&revision=251069
Submitted-by: "Eitan Adler" <lists at eitanadl
Correct BSD License clause numbering from 1-2-4 to 1-2-3.
Apparently everyone's doing it: http://svnweb.freebsd.org/base?view=revision&revision=251069
Submitted-by: "Eitan Adler" <lists at eitanadler.com>
show more ...
|
Revision tags: v3.4.2 |
|
#
2702099d |
| 06-May-2013 |
Justin C. Sherrill <justin@shiningsilence.com> |
Remove advertising clause from all that isn't contrib or userland bin.
By: Eitan Adler <lists@eitanadler.com>
|
Revision tags: v3.4.0, v3.4.1, v3.4.0rc, v3.5.0, v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3, v3.0.2 |
|
#
678e8cc6 |
| 05-Mar-2012 |
Sascha Wildner <saw@online.de> |
Sweep-fix comparing pointers with 0 (and assigning 0 to pointers).
For better readability, don't compare pointers with 0 or assign 0 to them. Use NULL instead.
The change was done with coccinelle.
|
Revision tags: v3.0.1, v3.1.0, v3.0.0 |
|
#
86d7f5d3 |
| 26-Nov-2011 |
John Marino <draco@marino.st> |
Initial import of binutils 2.22 on the new vendor branch
Future versions of binutils will also reside on this branch rather than continuing to create new binutils branches for each new version.
|
Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0 |
|
#
b2b3ffcd |
| 04-Nov-2009 |
Simon Schubert <corecode@dragonflybsd.org> |
rename amd64 architecture to x86_64
The rest of the world seems to call amd64 x86_64. Bite the bullet and rename all of the architecture files and references. This will hopefully make pkgsrc build
rename amd64 architecture to x86_64
The rest of the world seems to call amd64 x86_64. Bite the bullet and rename all of the architecture files and references. This will hopefully make pkgsrc builds less painful.
Discussed-with: dillon@
show more ...
|
#
c1543a89 |
| 04-Nov-2009 |
Simon Schubert <corecode@dragonflybsd.org> |
rename amd64 architecture to x86_64
The rest of the world seems to call amd64 x86_64. Bite the bullet and rename all of the architecture files and references. This will hopefully make pkgsrc build
rename amd64 architecture to x86_64
The rest of the world seems to call amd64 x86_64. Bite the bullet and rename all of the architecture files and references. This will hopefully make pkgsrc builds less painful.
Discussed-with: dillon@
show more ...
|
#
c0202573 |
| 23-Oct-2010 |
Matthew Dillon <dillon@apollo.backplane.com> |
libkvm - Add ability to access userspace from kgdb on cores
* Use %cr3 from the dumppcb instead of KPML4phys on x86_64, and similarly for i386, to access the full page table as of when the panic o
libkvm - Add ability to access userspace from kgdb on cores
* Use %cr3 from the dumppcb instead of KPML4phys on x86_64, and similarly for i386, to access the full page table as of when the panic occured instead of just the kernel page table.
* minidumps do not dump userspace so userspace will still not be available, but this gives us the option of sysctl'ing off minidumps when userspace access is desired, and kgdb will then be able to access the current userspace context as of the panic, as well.
show more ...
|
#
78a7b07a |
| 06-Dec-2009 |
Alex Hornung <ahornung@gmail.com> |
libkvm - Update for new dumps & minidumps
* Update libkvm so it will work with the new-style dumps and minidumps.
* If the ELF header of a core dump is not valid, assume it's an old style dump. T
libkvm - Update for new dumps & minidumps
* Update libkvm so it will work with the new-style dumps and minidumps.
* If the ELF header of a core dump is not valid, assume it's an old style dump. This way we can still read old-style dumps after this update.
Obtained-from: FreeBSD
show more ...
|