qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 3/9] qtest: add C version of test infrastructure


From: Kevin Wolf
Subject: Re: [Qemu-devel] [PATCH 3/9] qtest: add C version of test infrastructure
Date: Thu, 15 Mar 2012 15:58:05 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20120209 Thunderbird/10.0.1

Am 15.03.2012 15:42, schrieb Stefan Hajnoczi:
> On Thu, Mar 15, 2012 at 1:37 PM, Anthony Liguori <address@hidden> wrote:
>> +    sock = socket(PF_UNIX, SOCK_STREAM, 0);
>> +    g_assert_no_errno(sock);
>> +
>> +    addr.sun_family = AF_UNIX;
>> +    snprintf(addr.sun_path, sizeof(addr.sun_path), "%s", socket_path);
>> +
>> +    pid = fork();
>> +    if (pid == 0) {
>> +        command = g_strdup_printf("%s "
>> +                                  "-qtest unix:%s,server,nowait "
>> +                                  "-qtest-log /dev/null "
>> +                                  "-pidfile %s "
>> +                                  "-machine accel=qtest "
>> +                                  "%s", qemu_binary, socket_path,
>> +                                  pid_file,
>> +                                  extra_args ?: "");
>> +
>> +        ret = system(command);
>> +        exit(ret);
>> +        g_free(command);
>> +    }
>> +
>> +    do {
>> +        sleep(1);
>> +        ret = connect(sock, (struct sockaddr *)&addr, sizeof(addr));
>> +    } while (ret == -1);
> 
> I believe Kevin suggested using -qtest unix:%s and creating the listen
> socket in the test program rather than inside QEMU.  The advantage is
> that we never sleep(3), instead we accept(2) the connection from QEMU
> and get going right away.
> 
> This can be added as a patch later.
> 
> Kevin: Do you already have a patch or does someone need to write it?

I just complained (and reduced the delay locally). Paolo suggested a
real solution, which may have been what you describe, I don't remember
the details.

Kevin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]