From: Don Slutz <dslutz@verizon.com>
To: Jan Beulich <JBeulich@suse.com>, Don Slutz <dslutz@verizon.com>
Cc: Jun Nakajima <jun.nakajima@intel.com>, Tim Deegan <tim@xen.org>,
Kevin Tian <kevin.tian@intel.com>, Keir Fraser <keir@xen.org>,
Ian Campbell <ian.campbell@citrix.com>,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
George Dunlap <George.Dunlap@eu.citrix.com>,
Andrew Cooper <andrew.cooper3@citrix.com>,
Ian Jackson <ian.jackson@eu.citrix.com>,
xen-devel@lists.xen.org, Eddie Dong <eddie.dong@intel.com>,
Aravind Gopalakrishnan <Aravind.Gopalakrishnan@amd.com>,
Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>,
Boris Ostrovsky <boris.ostrovsky@oracle.com>
Subject: Re: [PATCH v9 12/13] test_x86_emulator.c: Add tests for #GP usage
Date: Wed, 25 Feb 2015 08:27:56 -0500 [thread overview]
Message-ID: <54EDCDDC.9000606@terremark.com> (raw)
In-Reply-To: <54ED961B020000780006367B@mail.emea.novell.com>
On 02/25/15 03:30, Jan Beulich wrote:
>>>> On 24.02.15 at 19:29, <dslutz@verizon.com> wrote:
>> + /*
>> + * Test out special #GP handling for the VMware port 0x5658.
>> + * This is done in two "modes", j=0 and j=1. Testing 4
>> + * instructions (all the basic PIO) in both modes.
>> + *
>> + * The port used is based on j.
>> + *
>> + * For IN, eax should change. For OUT eax should not change.
>> + *
>> + * All 4 PIO instructions are 1 byte long, so eip should only
>> + * change by 1.
>> + */
>
> Thanks, this looks reasonable.
>
>> + /*
>> + * In j=0, there should not be an error returned.
>> + * In j=1, there should be an error returned.
>> + */
>> + if ( rc != X86EMUL_OKAY )
>> + {
>> + if ( j == 0 )
>> + goto fail;
>> + }
>> + else if ( j == 1 )
>> + goto fail;
>
> I'd appreciate if this could be expressed in a little fewer lines. I'm not
> sure
>
> if ( (rc == X86EMUL_OKAY) == j )
> goto fail;
>
> would be deemed readable, but surely
>
> if ( rc == X86EMUL_OKAY ? j : !j )
> goto fail;
>
> would suffice.
Tried this and it works fine, so switching to:
+ if ( rc == X86EMUL_OKAY ? j : !j )
-Don Slutz
>> So I have checked and read, write_gp, cmpxchg_gp, read_segment,
>> and inject_hw_exception are not needed. So that leaves:
>>
>> static struct x86_emulate_ops emulops_gp = {
>> .insn_fetch = fetch,
>> .read_io = read_io,
>> .write_io = write_io,
>> .vmport_check = vmport_check,
>> };
>
> Quite a bit better, thanks.
>
> Jan
>
next prev parent reply other threads:[~2015-02-25 13:27 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-16 23:05 [PATCH v9 00/13] Xen VMware tools support Don Slutz
2015-02-16 23:05 ` [PATCH v9 01/13] hvm: Move MAX_INST_LEN into x86_emulate.h Don Slutz
2015-02-17 9:52 ` Andrew Cooper
2015-02-17 21:31 ` Don Slutz
2015-03-03 14:02 ` George Dunlap
2015-03-03 14:08 ` Andrew Cooper
2015-03-03 14:09 ` George Dunlap
2015-02-16 23:05 ` [PATCH v9 02/13] xen: Add support for VMware cpuid leaves Don Slutz
2015-02-17 10:02 ` Andrew Cooper
2015-02-17 15:57 ` Jan Beulich
2015-02-17 15:59 ` Andrew Cooper
2015-02-16 23:05 ` [PATCH v9 03/13] tools: Add vmware_hwver support Don Slutz
2015-03-03 14:14 ` Ian Campbell
2015-02-16 23:05 ` [PATCH v9 04/13] vmware: Add VMware provided include file Don Slutz
2015-02-17 10:03 ` Andrew Cooper
2015-02-16 23:05 ` [PATCH v9 05/13] xen: Add vmware_port support Don Slutz
2015-02-17 10:30 ` Andrew Cooper
2015-02-18 2:18 ` Don Slutz
2015-02-23 15:05 ` Jan Beulich
2015-02-23 16:03 ` Don Slutz
2015-02-23 16:28 ` Jan Beulich
2015-02-16 23:05 ` [PATCH v9 06/13] xen: Add ring 3 " Don Slutz
2015-02-17 14:38 ` Andrew Cooper
2015-02-18 17:03 ` Don Slutz
2015-02-18 18:19 ` Andrew Cooper
2015-02-21 13:36 ` Don Slutz
2015-02-21 15:40 ` Andrew Cooper
2015-02-21 16:06 ` Don Slutz
2015-02-23 15:12 ` Jan Beulich
2015-02-23 17:11 ` Don Slutz
2015-02-24 8:34 ` Jan Beulich
2015-02-24 17:14 ` Don Slutz
2015-02-25 8:39 ` Jan Beulich
2015-02-16 23:05 ` [PATCH v9 07/13] tools: Add " Don Slutz
2015-03-03 14:23 ` Ian Campbell
2015-05-14 23:10 ` Don Slutz
2015-02-16 23:05 ` [PATCH v9 08/13] Add IOREQ_TYPE_VMWARE_PORT Don Slutz
2015-02-17 10:08 ` Paul Durrant
2015-02-18 2:44 ` Don Slutz
2015-02-24 15:34 ` Jan Beulich
2015-02-25 20:20 ` Don Slutz
2015-02-26 8:07 ` Jan Beulich
2015-02-26 11:49 ` Paul Durrant
2015-02-26 14:55 ` Don Slutz
2015-02-26 15:00 ` Paul Durrant
2015-02-26 15:10 ` Jan Beulich
2015-02-26 19:52 ` Don Slutz
2015-02-27 7:48 ` Jan Beulich
2015-03-03 14:25 ` Ian Campbell
2015-02-16 23:05 ` [PATCH v9 09/13] Add xentrace to vmware_port Don Slutz
2015-02-17 13:45 ` Andrew Cooper
2015-02-17 18:22 ` Don Slutz
2015-02-23 16:57 ` Jan Beulich
2015-02-23 19:13 ` Don Slutz
2015-02-24 7:19 ` Jan Beulich
2015-03-03 14:27 ` Ian Campbell
2015-02-16 23:05 ` [PATCH v9 10/13] test_x86_emulator.c: Add typedef for boot_t Don Slutz
2015-02-17 14:44 ` Andrew Cooper
2015-02-17 22:46 ` Don Slutz
2015-02-16 23:05 ` [PATCH v9 11/13] test_x86_emulator.c: Add emacs block Don Slutz
2015-02-17 14:52 ` Andrew Cooper
2015-03-03 14:28 ` Ian Campbell
2015-03-03 14:31 ` Andrew Cooper
2015-02-16 23:05 ` [PATCH v9 12/13] test_x86_emulator.c: Add tests for #GP usage Don Slutz
2015-02-24 15:38 ` Jan Beulich
2015-02-24 18:29 ` Don Slutz
2015-02-25 8:30 ` Jan Beulich
2015-02-25 13:27 ` Don Slutz [this message]
2015-02-16 23:05 ` [OPTIONAL][PATCH v9 13/13] Add xen-hvm-param Don Slutz
2015-02-17 14:11 ` Andrew Cooper
2015-02-18 2:51 ` Don Slutz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54EDCDDC.9000606@terremark.com \
--to=dslutz@verizon.com \
--cc=Aravind.Gopalakrishnan@amd.com \
--cc=George.Dunlap@eu.citrix.com \
--cc=JBeulich@suse.com \
--cc=andrew.cooper3@citrix.com \
--cc=boris.ostrovsky@oracle.com \
--cc=eddie.dong@intel.com \
--cc=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=jun.nakajima@intel.com \
--cc=keir@xen.org \
--cc=kevin.tian@intel.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=suravee.suthikulpanit@amd.com \
--cc=tim@xen.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.