mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-26 16:18:31 +00:00
Make the INTO instruction operational in 32bit mode.
Having the IDT entry specify ring 0 DPL caused delivery of #GP instead of #OF. The instruction is not valid in 64bit mode, which probably explains why the IDT entry for #OF was initially set this way. It is interesting to note that the BOUND instruction works with the IDT #BR entry DPL 0, most likely CPU considers #BR from BOUND as generated by a machine, not user. Sponsored by: The FreeBSD Foundation MFC after: 1 week
This commit is contained in:
parent
523bfea2a1
commit
f407f5fb88
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=332060
@ -1636,7 +1636,7 @@ hammer_time(u_int64_t modulep, u_int64_t physfree)
|
||||
setidt(IDT_BP, pti ? &IDTVEC(bpt_pti) : &IDTVEC(bpt), SDT_SYSIGT,
|
||||
SEL_UPL, 0);
|
||||
setidt(IDT_OF, pti ? &IDTVEC(ofl_pti) : &IDTVEC(ofl), SDT_SYSIGT,
|
||||
SEL_KPL, 0);
|
||||
SEL_UPL, 0);
|
||||
setidt(IDT_BR, pti ? &IDTVEC(bnd_pti) : &IDTVEC(bnd), SDT_SYSIGT,
|
||||
SEL_KPL, 0);
|
||||
setidt(IDT_UD, pti ? &IDTVEC(ill_pti) : &IDTVEC(ill), SDT_SYSIGT,
|
||||
|
Loading…
Reference in New Issue
Block a user