ring0: fix off-by-one bug in IsCanonical

PiperOrigin-RevId: 471373714
This commit is contained in:
Andrei Vagin
2022-08-31 15:42:04 -07:00
committed by gVisor bot
parent b9f04e4000
commit 479fd558e1
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -215,7 +215,7 @@ func (c *CPU) EFER() uint64 {
//
//go:nosplit
func IsCanonical(addr uint64) bool {
return addr <= 0x00007fffffffffff || addr > 0xffff800000000000
return addr <= 0x00007fffffffffff || addr >= 0xffff800000000000
}
// SwitchToUser performs either a sysret or an iret.
+1 -1
View File
@@ -54,7 +54,7 @@ func (c *CPU) StackTop() uint64 {
//
//go:nosplit
func IsCanonical(addr uint64) bool {
return addr <= 0x0000ffffffffffff || addr > 0xffff000000000000
return addr <= 0x0000ffffffffffff || addr >= 0xffff000000000000
}
// SwitchToUser performs an eret.