Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/56323 )

Change subject: arch-x86: Check for null CS in int gates.
......................................................................

arch-x86: Check for null CS in int gates.

When using an interrupt or trap gate, the target selector can't be a
null selector.

Change-Id: I79a01abb430eb92d11aa3e17d4017ffa262ae5fc
---
M src/arch/x86/isa/microops/regop.isa
1 file changed, 16 insertions(+), 0 deletions(-)



diff --git a/src/arch/x86/isa/microops/regop.isa b/src/arch/x86/isa/microops/regop.isa
index 556a02c..de4bb38 100644
--- a/src/arch/x86/isa/microops/regop.isa
+++ b/src/arch/x86/isa/microops/regop.isa
@@ -1503,6 +1503,10 @@
                         ((desc.type & 0x6) != 0x6)) {
                     fault = std::make_shared<GeneralProtection>(0);
                 }
+                // GP if the code selector is null.
+                if ((bits(desc, 31, 16) & 0xfc) == 0) {
+                    fault = std::make_shared<GeneralProtection>(0);
+                }
                 break;
               case SegSSCheck:
                 if (selector.si || selector.ti) {

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/56323
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I79a01abb430eb92d11aa3e17d4017ffa262ae5fc
Gerrit-Change-Number: 56323
Gerrit-PatchSet: 1
Gerrit-Owner: Gabe Black <gabe.bl...@gmail.com>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to