mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 10:11:27 +01:00
x86emul/fuzz: adjust canonicalization in sanitize_input()
Drop it entirely for %rbp - this register is not special purpose enough to warrant such special treatment. Add a comment to clarify the purpose of the canonicalization of %rip and %rsp. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
This commit is contained in:
1 parent
7881bf4882
commit
f68f35fd20
1 file changed
+5
-2
@@ -708,7 +708,6 @@ enum {
|
||||
HOOK_vmfunc,
|
||||
CANONICALIZE_rip,
|
||||
CANONICALIZE_rsp,
|
||||
CANONICALIZE_rbp
|
||||
};
|
||||
|
||||
/* Expects bitmap to be defined */
|
||||
@@ -785,9 +784,13 @@ static void sanitize_input(struct x86_emulate_ctxt *ctxt)
|
||||
regs->error_code = 0;
|
||||
regs->entry_vector = 0;
|
||||
|
||||
/*
|
||||
* For both RIP and RSP make sure we test with canonical values in at
|
||||
* least a fair number of cases. As all other registers aren't tied to
|
||||
* special addressing purposes, leave everything else alone.
|
||||
*/
|
||||
CANONICALIZE_MAYBE(rip);
|
||||
CANONICALIZE_MAYBE(rsp);
|
||||
CANONICALIZE_MAYBE(rbp);
|
||||
|
||||
/*
|
||||
* CR0.PG can't be set if CR0.PE isn't set. Set is more interesting, so
|
||||
|
||||