From: Marcel Apfelbaum <marcel@redhat.com>
To: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: qemu-devel@nongnu.org, quintela@redhat.com, amit.shah@redhat.com,
aarcange@redhat.com, den@openvz.org, marcel.a@redhat.com,
eblake@redhat.com
Subject: Re: [Qemu-devel] [PATCH v2 4/5] test: Postcopy
Date: Tue, 3 May 2016 13:42:43 +0300 [thread overview]
Message-ID: <572880A3.7040504@redhat.com> (raw)
In-Reply-To: <20160503103423.GF2242@work-vm>
On 05/03/2016 01:34 PM, Dr. David Alan Gilbert wrote:
> * Marcel Apfelbaum (marcel@redhat.com) wrote:
>> On 05/03/2016 12:22 PM, Dr. David Alan Gilbert wrote:
>
>>>>> + QDECREF(rsp);
>>>>> + usleep(1000 * 100);
>>>>> + } while (!completed);
>>>>> +}
>>>>
>>>> It is possible that the migration will not finish (from some reason) ?
>>>> Do you expect the test runner to stop the test?
>>>
>>> The migration should always complete in postcopy; failure to complete
>>> is failure of the test; although I've not explicitly added any timeouts.
>>>
>>
>> OK, so on a failure I run make-check and it never ends ? :)
>> For build-bots there is no problem since they kill tests on timeout,
>> but we are running it manually.
>> However, we can add the test as is and if it 'behaves' is OK.
>
> Most of the failure cases will cause an assert/crash - a hang should be
> unlikely.
Agreed
I'm assuming a bunch of tests can in principal hang if they go wrong;
Not sure about that.
> if there's some qtest structure for timeouts I can add it.
Not that I know of.
But again, let's see how it behaves, maybe there is no problem at all.
>
>>> <snip>
>>>
>>>>> +int main(int argc, char **argv)
>>>>> +{
>>>>> + char template[] = "/tmp/postcopy-test-XXXXXX";
>>>>
>>>> I would not explicitly use /tmp/
>>>
>>> The ivshmem-test, vhost-user-test and test-qga seem to do it this way;
>>> what's your preferred fix?
>>
>> You could use the P_tmpdir macro instead of '/tmp', but again,
>> if all the tests assume /tmp existence maybe is not an issue.
>
> I don't see any use of P_tmpdir in qemu at all; we do have one use of
> g_get_tmp_dir (in util/memfd.c).
Even better! I like the way it look for it:
On UNIX, this is taken from the TMPDIR environment variable.
If the variable is not set, P_tmpdir is used, as defined by the system C library.
Failing that, a hard-coded default of "/tmp" is returned.
>
>>>>> + int ret;
>>>>> +
>>>>> + g_test_init(&argc, &argv, NULL);
>>>>> +
>>>>> + if (!ufd_version_check()) {
>>>>> + return 0;
>>>>> + }
>>>>> +
>>>>> + tmpfs = mkdtemp(template);
>>>>> + if (!tmpfs) {
>>>>> + g_test_message("mkdtemp on path (%s): %s\n", template, strerror(errno));
>>>>> + }
>>>>> + g_assert(tmpfs);
>>>>> +
>>>>> + module_call_init(MODULE_INIT_QOM);
>>>>> +
>>>>> + qtest_add_func("/postcopy", test_migrate);
>>>>> +
>>>>
>>>> How much time does this test takes? If is too long, maybe we should not run it
>>>> automatically as part of make check, but using an environment variable.
>>>
>>> 4 seconds on my laptop; it seems reasonable.
>>>
>>
>> make-check takes about 1 and a half minute for x86_64 configuration, 4 seconds
>> more seems reasonable indeed.
>
> Dave
>
>> Thanks,
>> Marcel
>>
>>
>>> Dave
>>> --
>>> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
>>>
>>
> --
> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
>
next prev parent reply other threads:[~2016-05-03 10:43 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-29 14:47 [Qemu-devel] [PATCH v2 0/5] postcopy (& 1 test) patch for 2.7 Dr. David Alan Gilbert (git)
2016-04-29 14:47 ` [Qemu-devel] [PATCH v2 1/5] Postcopy: Avoid 0 length discards Dr. David Alan Gilbert (git)
2016-04-29 15:03 ` Denis V. Lunev
2016-04-29 14:47 ` [Qemu-devel] [PATCH v2 2/5] Migration: Split out ram part of qmp_query_migrate Dr. David Alan Gilbert (git)
2016-04-29 14:56 ` Eric Blake
2016-04-29 15:02 ` Denis V. Lunev
2016-04-29 14:47 ` [Qemu-devel] [PATCH v2 3/5] Postcopy: Add stats on page requests Dr. David Alan Gilbert (git)
2016-04-29 14:57 ` Eric Blake
2016-04-29 15:03 ` Denis V. Lunev
2016-04-29 14:47 ` [Qemu-devel] [PATCH v2 4/5] test: Postcopy Dr. David Alan Gilbert (git)
2016-05-01 8:44 ` Marcel Apfelbaum
2016-05-03 9:22 ` Dr. David Alan Gilbert
2016-05-03 10:05 ` Marcel Apfelbaum
2016-05-03 10:34 ` Dr. David Alan Gilbert
2016-05-03 10:42 ` Marcel Apfelbaum [this message]
2016-05-06 12:35 ` Dr. David Alan Gilbert
2016-04-29 14:47 ` [Qemu-devel] [PATCH v2 5/5] tests: fix libqtest socket timeouts Dr. David Alan Gilbert (git)
2016-05-01 8:22 ` Marcel Apfelbaum
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=572880A3.7040504@redhat.com \
--to=marcel@redhat.com \
--cc=aarcange@redhat.com \
--cc=amit.shah@redhat.com \
--cc=den@openvz.org \
--cc=dgilbert@redhat.com \
--cc=eblake@redhat.com \
--cc=marcel.a@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
/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.