Lines Matching refs:hypervisor

5 A mechanism is required to binarily patch the running hypervisor with new
9 upload to the hypervisor binary patches.
39 The mechanism needs to be flexible to patch the hypervisor in multiple ways
44 by hypervisor and the virtual address for the new code is allocated dynamically.
46 This implies that the hypervisor must compute the new offsets when splicing
50 To lessen the amount of code in hypervisor, the consumer of the API
54 the hypervisor virtual address space.
85 start of the old function. N.B. The Xen hypervisor implements the third
90 As example we will assume the hypervisor does not have XSA-132 (see
91 [domctl/sysctl: don't leak hypervisor stack to toolstacks](https://xenbits.xen.org/gitweb/?p=xen.gi…
92 and we would like to binary patch the hypervisor with it. The original code
98 while the new patched hypervisor would be:
121 - which is not called directly by hypervisor but on behalf of the guests via
158 For this example we will assume that the hypervisor has not been compiled with
162 called **anywhere** in the hypervisor (it is called by the guest) but
214 With this method we can re-write the hypervisor - and as such we **MUST** be
246 Note that every structure has padding. This is added so that the hypervisor
311 zero, otherwise will be used during dynamic linking (when hypervisor loads
314 payload generation time if hypervisor function address is known. If unknown,
315 the value *MUST* be zero and the hypervisor will attempt to resolve the
366 When applying the patch the hypervisor iterates over each `livepatch_func`
370 When reverting a patch, the hypervisor iterates over each `livepatch_func`
405 /* MUST be in sync with hypervisor. */
542 appropiate payload against the right hypervisor) there is a need
627 Upload a payload to the hypervisor. The payload is verified
711 loaded in the hypervisor.
716 the hypervisor. If the value differs the data is stale.
717 * `idx` Index iterator. The index into the hypervisor's payload count. It is
719 hypervisor will update with the remaining payload count) be provided.
720 Also the hypervisor will provide `version` with the most current value,
732 provided by the hypervisor). Individual payload name cannot be longer than
741 provided by the hypervisor). Individual payload metadata string can be of
786 uint32_t idx; /* IN: Index into hypervisor list. */
834 the hypervisor default. If within the time the operation does not succeed
838 buildid dependency. Checks only if module is built for given hypervisor by
854 /* hypervisor default. */
936 ELF .section header to tag this location. During run-time the hypervisor
954 The hypervisor's time rendezvous code runs synchronously across all CPUs
974 hypervisor with IPIs, can be utilized to execute lockstep instructions
981 This is implemented in the Xen hypervisor.
983 ### Compiling the hypervisor code
1011 This is implemented in the Xen hypervisor.
1038 The trampoline patching is implemented in the Xen hypervisor.
1053 This is implemented in the Xen hypervisor.
1065 Over the life-time of patching the hypervisor this large patch
1080 being loaded and requires an hypervisor build-id to match against.
1085 The second option which requires an build-id of the hypervisor
1086 is implemented in the Xen hypervisor.
1090 * The build-id of the Xen hypervisor it depends on (extracted from the
1091 hypervisor during build time).
1093 the previous payload or hypervisor during build time).
1095 This means that every payload depends on the hypervisor build-id and on
1097 The very first payload depends on the hypervisor build-id only.
1107 * Be able to lookup in the Xen hypervisor the symbol names of functions from the
1112 the stack, make sure the payload is built with same compiler as hypervisor).
1185 data layout in ELF format **MUST** match what the hypervisor would be
1251 The hypervisor should verify that the in-place patching would fit within
1258 from the old code. That should not be a problem since Xen hypervisor has
1283 that in the hypervisor is advised.
1302 The hypervisor also checks the displacement during loading of the payload.