Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


15 years agobug fixes for:
Jack Lange [Sat, 7 Feb 2009 01:11:04 +0000]
bug fixes for:
xed decoder
passthrough paging
emulator

added apic memory hooks

15 years agofixed data type for 64 bit instruction form
Jack Lange [Fri, 6 Feb 2009 23:22:35 +0000]
fixed data type for 64 bit instruction form

15 years agoadded 64 bit emulated instruction forms
Jack Lange [Fri, 6 Feb 2009 23:03:00 +0000]
added 64 bit emulated instruction forms

15 years agocleaned up emulation interface
Jack Lange [Fri, 6 Feb 2009 22:55:27 +0000]
cleaned up emulation interface
added read emulation
added full memory hooks

15 years ago32bit Write Hook Case for Direct Paging
Steven Jaconette [Fri, 6 Feb 2009 20:30:18 +0000]
32bit Write Hook Case for Direct Paging

15 years agoDirect paging changes
Steven Jaconette [Fri, 6 Feb 2009 05:39:55 +0000]
Direct paging changes

15 years agoformat change
Jack Lange [Fri, 6 Feb 2009 06:20:37 +0000]
format change

15 years agochanged instruction macros to write forms
Jack Lange [Fri, 6 Feb 2009 06:20:12 +0000]
changed instruction macros to write forms

15 years agominor fixes
Jack Lange [Fri, 6 Feb 2009 06:19:11 +0000]
minor fixes

15 years agoadded license
Jack Lange [Fri, 6 Feb 2009 06:18:00 +0000]
added license

15 years agocleaned up dev manager implementation
Jack Lange [Fri, 6 Feb 2009 06:16:59 +0000]
cleaned up dev manager implementation

15 years agoadded APIC device
Jack Lange [Fri, 6 Feb 2009 06:16:24 +0000]
added APIC device

15 years agoremoved reference to shadow_efer
Jack Lange [Thu, 5 Feb 2009 22:27:43 +0000]
removed reference to shadow_efer

15 years agosave/restore MSRs before VM entry/exit
Jack Lange [Thu, 5 Feb 2009 22:09:55 +0000]
save/restore MSRs before VM entry/exit

15 years ago64 bit guests initially supported
Jack Lange [Thu, 5 Feb 2009 20:42:49 +0000]
64 bit guests initially supported

15 years agoMerge branch 'devel' of ssh://palacios@newskysaw.cs.northwestern.edu/home/palacios...
Lei Xia [Wed, 4 Feb 2009 20:04:59 +0000]
Merge branch 'devel' of ssh://palacios@newskysaw.cs.northwestern.edu/home/palacios/palacios into devel

15 years agoadded os_debug device
Jack Lange [Wed, 4 Feb 2009 20:01:47 +0000]
added os_debug device

15 years agoMerge branch 'devel' of /home/palacios/palacios into devel
Lei Xia [Wed, 4 Feb 2009 19:52:36 +0000]
Merge branch 'devel' of /home/palacios/palacios into devel

15 years agofixed 64 bit PDE access check
Jack Lange [Wed, 4 Feb 2009 04:44:37 +0000]
fixed 64 bit PDE access check

15 years agofixed paging callbacks to normalize calling convention
Jack Lange [Wed, 4 Feb 2009 04:40:25 +0000]
fixed paging callbacks to normalize calling convention

15 years agofunctional but broken 64 bit paging
Jack Lange [Wed, 4 Feb 2009 04:30:10 +0000]
functional but broken 64 bit paging

15 years agochanged to error output
Jack Lange [Wed, 4 Feb 2009 04:29:29 +0000]
changed to error output

15 years agoRemove the test code
Lei Xia [Wed, 4 Feb 2009 00:03:01 +0000]
Remove the test code

15 years agoMerge branch 'devel' of /home/palacios/palacios into devel
Lei Xia [Wed, 4 Feb 2009 00:00:02 +0000]
Merge branch 'devel' of /home/palacios/palacios into devel

15 years agoV3_Sockets Macros tested
Lei Xia [Tue, 3 Feb 2009 23:59:28 +0000]
V3_Sockets Macros tested

15 years agocleaned up 32 bit shadow paging implementation
Jack Lange [Tue, 3 Feb 2009 22:38:21 +0000]
cleaned up 32 bit shadow paging implementation

15 years agofixed spurious characters...
Jack Lange [Tue, 3 Feb 2009 22:38:03 +0000]
fixed spurious characters...

15 years agostarting work on 64 bit shadow paging
Jack Lange [Tue, 3 Feb 2009 22:19:08 +0000]
starting work on 64 bit shadow paging

15 years agoMerge branch 'devel' of ssh://palacios@newskysaw.cs.northwestern.edu/home/palacios...
Lei Xia [Tue, 3 Feb 2009 22:09:59 +0000]
Merge branch 'devel' of ssh://palacios@newskysaw.cs.northwestern.edu/home/palacios/palacios into devel

15 years agochange my email in Makefile
Lei Xia [Tue, 3 Feb 2009 22:09:18 +0000]
change my email in Makefile

15 years agoFinish the VMM Socket Layer
Lei Xia [Tue, 3 Feb 2009 21:43:29 +0000]
Finish the VMM Socket Layer

15 years agoFinish the VMM Socket Layer
Lei Xia [Tue, 3 Feb 2009 21:42:50 +0000]
Finish the VMM Socket Layer

15 years agoadded list_tail_entry() accessor function
Jack Lange [Tue, 3 Feb 2009 21:34:20 +0000]
added list_tail_entry() accessor function

15 years agoslight modifications to the shadow paging handlers
Jack Lange [Tue, 3 Feb 2009 20:50:55 +0000]
slight modifications to the shadow paging handlers

15 years agorevamped the INVLPG handler
Jack Lange [Tue, 3 Feb 2009 20:45:02 +0000]
revamped the INVLPG handler

15 years agomodified the shadow paging files to separate them based on CPU mode
Jack Lange [Tue, 3 Feb 2009 20:13:04 +0000]
modified the shadow paging files to separate them based on CPU mode

15 years agoprofiler changes
Jack Lange [Fri, 30 Jan 2009 01:25:00 +0000]
profiler changes
nominal shadow paging optimization
Makefile documentation changes

15 years agosome fixes
Jack Lange [Fri, 30 Jan 2009 00:02:05 +0000]
some fixes

15 years agosome fixes for profiling
Jack Lange [Thu, 29 Jan 2009 22:10:49 +0000]
some fixes for profiling

15 years agoadded profiling support
Jack Lange [Thu, 29 Jan 2009 04:57:09 +0000]
added profiling support
and also added license to some files

15 years agochanged shadow memory map to use Red Black Tree
Jack Lange [Wed, 28 Jan 2009 23:37:08 +0000]
changed shadow memory map to use Red Black Tree
cleaned up shadow memory map interface

15 years agofixed debug print syntax errors
Jack Lange [Wed, 28 Jan 2009 23:36:36 +0000]
fixed debug print syntax errors

15 years agochanged the io_map implementation to use red-black trees instead of linked list
Jack Lange [Wed, 28 Jan 2009 00:31:54 +0000]
changed the io_map implementation to use red-black trees instead of linked list

15 years agofixed instruction emulation for 64 bit machines
Jack Lange [Tue, 27 Jan 2009 21:07:20 +0000]
fixed instruction emulation for 64 bit machines

15 years agofixed debug flags...
Jack Lange [Tue, 27 Jan 2009 20:46:00 +0000]
fixed debug flags...

15 years agoworking instruction emulation
Jack Lange [Sun, 25 Jan 2009 21:12:26 +0000]
working instruction emulation

15 years agoadded red-black tree implementation from linux
Jack Lange [Wed, 21 Jan 2009 23:25:02 +0000]
added red-black tree implementation from linux

15 years agoadded test directory for unit test files
Jack Lange [Wed, 21 Jan 2009 00:20:02 +0000]
added test directory for unit test files

15 years agoadded initial attempt at emulator
Jack Lange [Wed, 17 Dec 2008 23:02:57 +0000]
added initial attempt at emulator

15 years agofixed default build target
Jack Lange [Thu, 4 Dec 2008 21:25:50 +0000]
fixed default build target

15 years agosmall fixes
Jack Lange [Mon, 1 Dec 2008 23:28:49 +0000]
small fixes

15 years agostupid error fix
Jack Lange [Tue, 25 Nov 2008 00:41:19 +0000]
stupid error fix

15 years agoadded sock_set functions for select() support
Jack Lange [Tue, 25 Nov 2008 00:36:15 +0000]
added sock_set functions for select() support

15 years agoadded socket interface
Jack Lange [Mon, 24 Nov 2008 21:36:10 +0000]
added socket interface

15 years agoremoved kitten from Makefile
Jack Lange [Thu, 20 Nov 2008 22:35:31 +0000]
removed kitten from Makefile

15 years agoremoved kitten from the palacios tree,
Jack Lange [Thu, 20 Nov 2008 22:28:07 +0000]
removed kitten from the palacios tree,
Kitten is now an external dependency

16 years agomoved debugging functions over to new page table callback interfaces
Jack Lange [Tue, 4 Nov 2008 00:36:43 +0000]
moved debugging functions over to new page table callback interfaces

16 years agoreworked the paging functions
Jack Lange [Mon, 3 Nov 2008 23:55:18 +0000]
reworked the paging functions
*_lookup functions are now static local to vmm_paging.c and no longer return byte offsets for leaf pages
added page table drill functions
moved translate and access check functions over to drill implementations

16 years agohooked in page table walkers for 64 bit page table activation
Jack Lange [Fri, 31 Oct 2008 23:25:45 +0000]
hooked in page table walkers for 64 bit page table activation
bug fixes

16 years agoadded to string function for page_type enumerator
Jack Lange [Fri, 31 Oct 2008 23:12:11 +0000]
added to string function for page_type enumerator

16 years agoadded guest page table walkers
Jack Lange [Fri, 31 Oct 2008 23:05:16 +0000]
added guest page table walkers

16 years agofixed a ton of compile errors...
Jack Lange [Fri, 31 Oct 2008 22:33:35 +0000]
fixed a ton of compile errors...
I suck...

16 years agoadded page table walkers
Jack Lange [Fri, 31 Oct 2008 22:20:28 +0000]
added page table walkers

16 years agoadded full page table access check functions
Jack Lange [Fri, 31 Oct 2008 21:00:13 +0000]
added full page table access check functions

16 years agoadded pae+64 bit page table access checks
Jack Lange [Fri, 31 Oct 2008 19:36:06 +0000]
added pae+64 bit page table access checks
moved memory conversion functions to use new page table translate functions

16 years agoadded translation functions
Jack Lange [Fri, 31 Oct 2008 18:22:57 +0000]
added translation functions
fixed build errors

16 years agoadded the translation functions to the header file
Jack Lange [Thu, 30 Oct 2008 23:59:38 +0000]
added the translation functions to the header file

16 years agoadded guest page table translators for 32/32PAE/64 page tables
Jack Lange [Thu, 30 Oct 2008 23:56:23 +0000]
added guest page table translators for 32/32PAE/64 page tables

16 years agoadded lookup functions for all page table forms,
Jack Lange [Thu, 30 Oct 2008 23:14:30 +0000]
added lookup functions for all page table forms,
generalized the return types for the lookup functions
updated source tree to match
added large page forms for pae and 64 bit page tables

16 years agofixed xed to handle SMSW instructions
Jack Lange [Thu, 30 Oct 2008 22:15:05 +0000]
fixed xed to handle SMSW instructions
FreeDOS works

16 years agocleaned up the PAGE table access macros to be general implementations that work acros...
Jack Lange [Thu, 30 Oct 2008 22:14:01 +0000]
cleaned up the PAGE table access macros to be general implementations that work across all page table forms
starting to add page table translators

16 years agomoved paging debug functions to a separate file that gets included only into vmm_paging.c
Jack Lange [Thu, 30 Oct 2008 19:55:40 +0000]
moved paging debug functions to a separate file that gets included only into vmm_paging.c

16 years agounified and simplified the control register handlers to operate in all CPU modes
Jack Lange [Thu, 30 Oct 2008 05:30:57 +0000]
unified and simplified the control register handlers to operate in all CPU modes

16 years agoadded mem_size config variable
Jack Lange [Thu, 30 Oct 2008 05:30:17 +0000]
added mem_size config variable
not yet hooked up in the VMM
restructured the configuration

16 years agosetting up framework for 64 bit shadow paging
Jack Lange [Wed, 29 Oct 2008 21:48:02 +0000]
setting up framework for 64 bit shadow paging
streamlined geekos build

16 years agochanged the CR3 conversion macros to be physical/virtual address specific
Jack Lange [Wed, 29 Oct 2008 19:04:51 +0000]
changed the CR3 conversion macros to be physical/virtual address specific

16 years agorestructured the ctrl register handlers
Jack Lange [Wed, 29 Oct 2008 17:47:59 +0000]
restructured the ctrl register handlers
setting up the ctrl registers to call into the shadow paging subsystem for all shadow page operations
removed redundant shadow_cr3 variable from shadow paging state

16 years agoadded full EFER virtualization
Jack Lange [Wed, 29 Oct 2008 00:01:26 +0000]
added full EFER virtualization

16 years agoadded more 64 bit support,
Jack Lange [Tue, 28 Oct 2008 23:54:50 +0000]
added more 64 bit support,
moved around the control register handlers to segregate the different CPU modes
NOTE: They currently work, but they are wrong...

16 years agomore 64 bit guest support
Jack Lange [Mon, 27 Oct 2008 22:50:04 +0000]
more 64 bit guest support
we can mostly handle efer reads/writes
we can transition direct mapped page tables from 32 bit to 64 bit formats
added Page Table debugging support

16 years agoadded MSR hook framework
Jack Lange [Mon, 27 Oct 2008 21:05:51 +0000]
added MSR hook framework
added preliminary CR4 write handler, to handle PAE mode switch
added passthrough 32bit PAE page tables for non-paged 32 bit PAE mode

16 years agofixed format string issues due to printf attribute checks
Jack Lange [Sun, 26 Oct 2008 01:18:07 +0000]
fixed format string issues due to printf attribute checks

16 years agobacked out support for long paged real mode
Jack Lange [Sat, 25 Oct 2008 18:35:21 +0000]
backed out support for long paged real mode

16 years agoadded 32 bit support for geekos
Jack Lange [Sat, 25 Oct 2008 17:54:54 +0000]
added 32 bit support for geekos

16 years agoMerge branch 'kitten' of ssh://sharedev@newskysaw.cs.northwestern.edu/home/sharedev...
Jack Lange [Wed, 22 Oct 2008 23:28:33 +0000]
Merge branch 'kitten' of ssh://sharedev@newskysaw.cs.northwestern.edu/home/sharedev/palacios into kitten

16 years agoadded 64 bit paging for paged real mode
Jack Lange [Wed, 22 Oct 2008 23:28:20 +0000]
added 64 bit paging for paged real mode

16 years agoMerge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten
Trammell Hudson [Wed, 22 Oct 2008 23:27:02 +0000]
Merge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten

16 years agoAdded auto-dependency tracking.
Trammell Hudson [Wed, 22 Oct 2008 23:25:27 +0000]
Added auto-dependency tracking.
Quieted build output.
Removed old targets and cleaned up some targets.

16 years agoMerge branch 'kitten' of ssh://sharedev@newskysaw.cs.northwestern.edu/home/sharedev...
Jack Lange [Wed, 22 Oct 2008 22:12:55 +0000]
Merge branch 'kitten' of ssh://sharedev@newskysaw.cs.northwestern.edu/home/sharedev/palacios into kitten

16 years agochanged VMCB to enter long paged real mode(?) if it exists.
Jack Lange [Wed, 22 Oct 2008 22:11:19 +0000]
changed VMCB to enter long paged real mode(?) if it exists.

16 years agoIt works!
Trammell Hudson [Wed, 22 Oct 2008 20:32:14 +0000]
It works!
- Fixed CR3 addresses to be kernel virtual addresses before
dereferencing them.
- Re-arranged v3_handle_shadow_invlpg()

16 years agoImprove panic message if asked to free a bad page
Trammell Hudson [Wed, 22 Oct 2008 20:31:36 +0000]
Improve panic message if asked to free a bad page

16 years agoMerge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten
Trammell Hudson [Wed, 22 Oct 2008 18:50:26 +0000]
Merge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten

16 years agofixed shadow paging up to the next error
Jack Lange [Wed, 22 Oct 2008 18:47:48 +0000]
fixed shadow paging up to the next error

16 years agomore printf format fixes
Jack Lange [Wed, 22 Oct 2008 16:45:01 +0000]
more printf format fixes

16 years agoMerge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten
Trammell Hudson [Wed, 22 Oct 2008 16:43:44 +0000]
Merge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten

16 years agotypecast fix
Jack Lange [Wed, 22 Oct 2008 16:43:25 +0000]
typecast fix

16 years agoMerge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten
Trammell Hudson [Wed, 22 Oct 2008 16:42:41 +0000]
Merge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten

16 years agoadded address conversion to cached CR3 value
Jack Lange [Wed, 22 Oct 2008 16:42:09 +0000]
added address conversion to cached CR3 value

16 years agoMerge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten
Trammell Hudson [Wed, 22 Oct 2008 16:35:42 +0000]
Merge branch 'kitten' of ssh://sharedev@localhost/home/sharedev/palacios into kitten