[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCHv2 0/4] Set eflags prior to segments; fix cpl in
From: |
Richard Henderson |
Subject: |
Re: [Qemu-devel] [PATCHv2 0/4] Set eflags prior to segments; fix cpl in SMM |
Date: |
Wed, 30 Apr 2014 09:58:21 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 |
On 04/30/2014 01:37 AM, Paolo Bonzini wrote:
> Il 29/04/2014 22:37, Kevin O'Connor ha scritto:
>> This patch series is an update to the patch I sent at:
>>
>> https://lists.gnu.org/archive/html/qemu-devel/2014-04/msg04028.html
>>
>> The goal of the patch series is to fix the SMM handler so that it runs
>> with the proper cpl. I've broken the series up based on the feedback
>> from Paolo.
>>
>> As with the previous patch, this series moves cr0 and eflags changes
>> above cpu_x86_load_seg_cache() calls as cpu_x86_load_seg_cache()
>> inspects those flags. I didn't move the eflags setting in
>> helper_ret_protected() because I don't think I can easily move the
>> eflags logic (it's not clear to me that it is safe to change eflags
>> prior to exception checks) and helper_ret_protected() doesn't change
>> any eflags bits that cpu_x86_load_seg_cache() cares about.
>>
>> That said, continuing to have cpu_x86_load_seg_cache() depend on cr0
>> and eflags is painful. I do wonder if it would be better to calculate
>> hflags lazily to eliminate these ordering issues.
>
> Reviewed-by: Paolo Bonzini <address@hidden>
Two style nits, but otherwise
Reviewed-by: Richard Henderson <address@hidden>
>
> Richard, Andreas, who is going to take this? I can do it too since I plan to
> put my soft-reset target-i386/ patches in uq/master after they are reviewed.
Please do.
r~
- [Qemu-devel] [PATCHv2 0/4] Set eflags prior to segments; fix cpl in SMM, Kevin O'Connor, 2014/04/29
- [Qemu-devel] [PATCH 1/4] Set eflags prior to calling svm_load_seg_cache() in svm_helper.c., Kevin O'Connor, 2014/04/29
- [Qemu-devel] [PATCH 2/4] Set eflags and cr0 prior to calling cpu_x86_load_seg_cache() in smm_helper.c., Kevin O'Connor, 2014/04/29
- [Qemu-devel] [PATCH 3/4] Set eflags prior to calling cpu_x86_load_seg_cache() in seg_helper.c., Kevin O'Connor, 2014/04/29
- [Qemu-devel] [PATCH 4/4] The x86 CPL is stored in CS.selector - auto update hflags accordingly., Kevin O'Connor, 2014/04/29
- Re: [Qemu-devel] [PATCHv2 0/4] Set eflags prior to segments; fix cpl in SMM, Paolo Bonzini, 2014/04/30