On Tue, Jan 17, 2012 at 11:13 AM, Stefan Hajnoczi wrote:
> On Mon, Jan 16, 2012 at 5:08 PM, Anthony Liguori
> wrote:
>> On 01/16/2012 10:59 AM, Stefan Hajnoczi wrote:
>>>
>>> On Fri, Jan 13, 2012 at 6:32 PM, Anthony Liguori
>>> wrote:
+ if (strcmp(words[0], "outb") == 0 ||
+
On Fri, January 13, 2012 19:32, Anthony Liguori wrote:
> diff --git a/qtest.c b/qtest.c
> new file mode 100644
> index 000..f41a9c3
> --- /dev/null
> +++ b/qtest.c
> @@ -0,0 +1,357 @@
> +/*
> + * Test Server
> + *
> + * Copyright IBM, Corp. 2011
> + *
> + * Authors:
> + * Anthony Liguori
>
On Mon, Jan 16, 2012 at 5:08 PM, Anthony Liguori wrote:
> On 01/16/2012 10:59 AM, Stefan Hajnoczi wrote:
>>
>> On Fri, Jan 13, 2012 at 6:32 PM, Anthony Liguori
>> wrote:
>>>
>>> + if (strcmp(words[0], "outb") == 0 ||
>>> + strcmp(words[0], "outw") == 0 ||
>>> + strcmp(words[0], "
On 01/16/2012 11:08 AM, Avi Kivity wrote:
On 01/16/2012 06:59 PM, Stefan Hajnoczi wrote:
+}
+qtest_send_prefix(chr);
+qtest_send(chr, "OK 0x%04x\n", value);
Endianness is a little weird here. memory.c will byteswap if target
and device endianness differ.
Imagine the c
On 01/16/2012 10:59 AM, Stefan Hajnoczi wrote:
On Fri, Jan 13, 2012 at 6:32 PM, Anthony Liguori wrote:
+if (strcmp(words[0], "outb") == 0 ||
+strcmp(words[0], "outw") == 0 ||
+strcmp(words[0], "outl") == 0) {
+uint16_t addr;
+uint32_t value;
+
+g_asse
On 01/16/2012 06:59 PM, Stefan Hajnoczi wrote:
> > +}
> > +qtest_send_prefix(chr);
> > +qtest_send(chr, "OK 0x%04x\n", value);
>
> Endianness is a little weird here. memory.c will byteswap if target
> and device endianness differ.
>
> Imagine the case where we're on an x86
On Fri, Jan 13, 2012 at 6:32 PM, Anthony Liguori wrote:
> + if (strcmp(words[0], "outb") == 0 ||
> + strcmp(words[0], "outw") == 0 ||
> + strcmp(words[0], "outl") == 0) {
> + uint16_t addr;
> + uint32_t value;
> +
> + g_assert(words[1] && words[2]);
> +
The idea behind qtest is pretty simple. Instead of executing a CPU via TCG or
KVM, rely on an external process to send events to the device model that the CPU
would normally generate.
qtest presents itself as an accelerator. In addition, a new option is added to
establish a qtest server (-qtest)