[libvirt] [PATCH] Avoid pthread_sigmask on Win32 platforms

Matthias Bolte matthias.bolte at googlemail.com
Thu Feb 10 14:38:08 UTC 2011


2011/2/10 Daniel P. Berrange <berrange at redhat.com>:
> On Thu, Feb 10, 2011 at 03:20:37PM +0100, Matthias Bolte wrote:
>> 2011/2/10 Daniel P. Berrange <berrange at redhat.com>:
>> > Win32 doesn't have a concept of signal masks so disable that
>> > code. It is unclear how SIGINT is delivered (if at all) on
>> > Win32, so this might further work to provide an alternative
>> > to pthread_sigmask
>> >
>> > * tools/virsh.c: Avoid pthread_sigmask on Win32
>> > ---
>>
>> ACK. This fixes one of the current problems on Win32.
>
> This was the only problem I see with Win32. What others do you see ?
>
> Regards,
> Daniel

I get errors like this related to %lld in format strings:

virsh.c: In function 'cmdDomblkstat':
virsh.c:990:9: warning: unknown conversion type character 'l' in
format [-Wformat]

The problem goes away when I replace the define for vshPrint

#define vshPrint(ctl, ...) fprintf(stdout, __VA_ARGS__)

by this function

static void
vshPrint(vshControl *ctl ATTRIBUTE_UNUSED, const char *format, ...)
{
    va_list ap;

    va_start(ap, format);
    vfprintf(stdout, format, ap);
    va_end(ap);
}

I'm not sure why this became a problem now, as vshPrint is a define
since 2006 and virsh used to compile before. Maybe this is an issue
with gnulib in the current libvirt-0.8.8-rc1 tarball, as I'm testing
based on this tarball it.

Are you compiling this from a git checkout or a tarball?

Matthias




More information about the libvir-list mailing list