target-i386: rework CPL checks during task switch, preparing for next patch
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 15 May 2014 16:19:17 +0000 (18:19 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 21 May 2014 16:02:08 +0000 (18:02 +0200)
commitd3b5491897456739c6dc21c604ef8bc28e294bfc
tree143de4951c8921d12ebfb076028356313a83c064
parentb98dbc90950cd4e43ab9b4f8300dbeae6cf8c8cb
target-i386: rework CPL checks during task switch, preparing for next patch

During task switch, all of CS.DPL, CS.RPL, SS.DPL must match (in addition
to all the other requirements) and will be the new CPL.  So far this worked
by carefully setting the CS selector and flags before doing the task
switch; but this will not work once we get the CPL from SS.DPL.

Temporarily assume that the CPL comes from CS.RPL during task switch
to a protected-mode task, until the descriptor of SS is loaded.

Tested-by: Kevin O'Connor <kevin@koconnor.net>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
target-i386/seg_helper.c