#
99387274 |
|
23-Jul-2018 |
George Kulakowski <kulakowski@google.com> |
[docs][syscalls] Add TODOs about documenting system call rights ZX-2399 #comment Test: no functional change Change-Id: I1f285c677e2444fcf1d720d7ecbd9f490c303962
|
#
013973ad |
|
26-Jun-2018 |
Doug Evans <dje@google.com> |
[docs][syscalls] Clarify ZX_ERR_NO_MEMORY as eventually going away Not touched: vmo_op_range.md vmo_set_size.md vmo_write.md The current text is ok for these. ZX-2303 #comment patch Tested: Just doc changes, read before/after. Change-Id: I2c6e1039e2b205e9cc377b9888755fa7ac676c78
|
#
b484762d |
|
02-Mar-2018 |
Abdulla Kamar <abdulla@google.com> |
[docs] Update docs for guest_set_trap The behaviour of the various kinds of traps has now changed, so update the docs to match. Change-Id: Ifff8619c62b07ee83043c1027f8869540c2681f4
|
#
0cefa2db |
|
01-Jan-2018 |
Alex Legg <alexlegg@google.com> |
[hypervisor][x86] Add VCPU packet type Capture START_UP IPIs and forward the instruction pointer and APIC ID to userland so it can bring up another VCPU. ZX-1246 #comment Change-Id: I624d87eb6031492dc7125750e28de7c4a1c1662c
|
#
b15008a1 |
|
13-Oct-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Require explicit trap for local APIC. We no longer create the trap within the kernel, but require it to be set from user-space. However, we specialise this trap, so that we map the APIC page within the address space, allowing for hardware acceleration when possible. Change-Id: I91efcc4e91e94d3934278be64c01a7b1a695a8d8
|
#
3fd820fa |
|
30-Sep-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Always set trap key in packet. Now that we require that all traps be explicitly set, we always have a key to propagate into any generated packet, not just those that will be sent over a port. Change-Id: I52e4e77232006b89eb6cbcd1478beccfe1fe6df4
|
#
bc53e572 |
|
27-Sep-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Explicitly trap IO. With this, we complete the requirement that you trap all things explicitly. Change-Id: I09dc8d83a7e003d867547ce786f5b65da5a8d563
|
#
703e20d2 |
|
20-Sep-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Add ZX_GUEST_TRAP_BELL. This new trap type allows a trap to be generated when a memory region is accessed. Unlike ZX_GUEST_TRAP_MEM, this does not attempt to fetch the instruction that generated the access. We can also deliver the trap asynchronously via a port, as we do not need to pause execution of the VCPU that caused the trap. In a follow up to this change, I'll begin explicitly marking all the memory regions that require a trap, which will also allow us to optimise our page-fault path. Change-Id: I0505dfe79abf997b0544ff6136bb739e52f8ba96
|
#
56366b8e |
|
19-Sep-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Fail if port is set for a mem-trap. It is not valid for a port to be set with a mem-trap. Change-Id: I232ae72d8f4d2ea2ea6779d91b130de8974c49c9
|
#
f3e2126c |
|
12-Sep-2017 |
Roland McGrath <mcgrathr@google.com> |
[zx] Magenta -> Zircon The Great Renaming is here! Change-Id: I3229bdeb2a3d0e40fb4db6fec8ca7d971fbffb94
|
#
37904fb9 |
|
05-Sep-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Return failure if trap length is 0. If guest_set_trap() is called with a len of 0, we should return failure. Change-Id: I996a942786376b793e9447e65a02d34042261cf6
|
#
2a6a0e8a |
|
21-Aug-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Add key arg to mx_guest_set_trap. This allows us to use mx_port_packet_t::key to distinguish packets for different traps that have been set using the same port. Change-Id: I407b3df8702022b8d4fefee53d25af63601ac1d2
|
#
a81264ef |
|
20-Aug-2017 |
Abdulla Kamar <abdulla@google.com> |
[hypervisor] Make guest traps use ports. Ports are a much better fit for the hypervisor than FIFOs. To take advantage of ports, we use our arena for PortPackets, rather than relying on the system-wide arena. This also allows us to easily wait and signal in response to packet availability in our own per-trap arenas. Change-Id: I8664f8438710e38abf96aefedc6ba446aaf04683
|
#
60e9e6c0 |
|
25-Jul-2017 |
Abdulla Kamar <abdulla@google.com> |
[magenta] Add syscalls for the hypervisor. This change adds 7 syscalls for the hypervisor: * guest_create - create a guest * guest_set_trap - sets a trap within a guest * vcpu_create - create a VCPU * vcpu_resume - resume execution of a VCPU * vcpu_interrupt - issue an interrupt on a VCPU * vcpu_read_state - read the state of a VCPU * vcpu_write_state - write the state of a VCPU This formalizes the hypervisor ops that were previously used by promoting them to first-class syscalls. Change-Id: I5d8e3772b98ae423faa39d21a6ef2901e940ffd9
|