Re: [Qemu-devel] Failing qemu-iotest 233

2019-02-19 Thread Eric Blake
On 2/19/19 4:44 AM, Daniel P. Berrangé wrote:
> On Tue, Feb 19, 2019 at 07:36:07AM +0100, Thomas Huth wrote:
>>
>>  Hi Eric, hi Daniel,
>>
>> QEMU iotest 233 is failing for me on RHEL7:
>>
>> 233[07:29:30] [07:29:30] [failed, exit status 1] - output 
>> mismatch (see 233.out.bad)
>> --- /home/thuth/devel/qemu/tests/qemu-iotests/233.out2019-02-19 
>> 07:14:45.0 +0100
>> +++ /home/thuth/tmp/qemu-build/tests/qemu-iotests/233.out.bad
>> 2019-02-19 07:29:30.0 +0100
>> @@ -13,45 +13,7 @@
>>  1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
>>  
>>  == check TLS client to plain server fails ==
>> -qemu-img: Could not open 
>> 'driver=nbd,host=127.0.0.1,port=PORT,tls-creds=tls0': Denied by server for 
>> option 5 (starttls)
>> -server reported: TLS not configured
>> -qemu-nbd: Denied by server for option 5 (starttls)
>> -server reported: TLS not configured
>> +qemu-nbd: Unable to import client certificate 
>> /tmp/qemu-iotests-quick-28354/tls/client1/client-cert.pem: Base64 unexpected 
>> header error.
> 
> This is fun, because it is actually non-determinstic, failing in a different
> place in the test everytime it is run !
> 
> Turns out that piping certtool to "head -1" is bad because it causes
> certtool to get a broken pipe making it quit before it has written
> the certificate to disk leaving a zero length file. This in turn
> causes the base64 error above.

Changing 'head -1' to 'sed -n 1p' should prevent certtool from seeing
SIGPIPE.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.   +1-919-301-3226
Virtualization:  qemu.org | libvirt.org



Re: [Qemu-devel] Failing qemu-iotest 233

2019-02-19 Thread Daniel P . Berrangé
On Tue, Feb 19, 2019 at 07:36:07AM +0100, Thomas Huth wrote:
> 
>  Hi Eric, hi Daniel,
> 
> QEMU iotest 233 is failing for me on RHEL7:
> 
> 233[07:29:30] [07:29:30] [failed, exit status 1] - output 
> mismatch (see 233.out.bad)
> --- /home/thuth/devel/qemu/tests/qemu-iotests/233.out 2019-02-19 
> 07:14:45.0 +0100
> +++ /home/thuth/tmp/qemu-build/tests/qemu-iotests/233.out.bad 2019-02-19 
> 07:29:30.0 +0100
> @@ -13,45 +13,7 @@
>  1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
>  
>  == check TLS client to plain server fails ==
> -qemu-img: Could not open 
> 'driver=nbd,host=127.0.0.1,port=PORT,tls-creds=tls0': Denied by server for 
> option 5 (starttls)
> -server reported: TLS not configured
> -qemu-nbd: Denied by server for option 5 (starttls)
> -server reported: TLS not configured
> +qemu-nbd: Unable to import client certificate 
> /tmp/qemu-iotests-quick-28354/tls/client1/client-cert.pem: Base64 unexpected 
> header error.

This is fun, because it is actually non-determinstic, failing in a different
place in the test everytime it is run !

Turns out that piping certtool to "head -1" is bad because it causes
certtool to get a broken pipe making it quit before it has written
the certificate to disk leaving a zero length file. This in turn
causes the base64 error above.

Regards,
Daniel
-- 
|: https://berrange.com  -o-https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o-https://fstop138.berrange.com :|
|: https://entangle-photo.org-o-https://www.instagram.com/dberrange :|



[Qemu-devel] Failing qemu-iotest 233

2019-02-18 Thread Thomas Huth


 Hi Eric, hi Daniel,

QEMU iotest 233 is failing for me on RHEL7:

233[07:29:30] [07:29:30] [failed, exit status 1] - output 
mismatch (see 233.out.bad)
--- /home/thuth/devel/qemu/tests/qemu-iotests/233.out   2019-02-19 
07:14:45.0 +0100
+++ /home/thuth/tmp/qemu-build/tests/qemu-iotests/233.out.bad   2019-02-19 
07:29:30.0 +0100
@@ -13,45 +13,7 @@
 1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 
 == check TLS client to plain server fails ==
-qemu-img: Could not open 'driver=nbd,host=127.0.0.1,port=PORT,tls-creds=tls0': 
Denied by server for option 5 (starttls)
-server reported: TLS not configured
-qemu-nbd: Denied by server for option 5 (starttls)
-server reported: TLS not configured
+qemu-nbd: Unable to import client certificate 
/tmp/qemu-iotests-quick-28354/tls/client1/client-cert.pem: Base64 unexpected 
header error.
 
 == check plain client to TLS server fails ==
-qemu-img: Could not open 'nbd://localhost:PORT': TLS negotiation required 
before option 8 (structured reply)
-server reported: Option 0x8 not permitted before TLS
-qemu-nbd: TLS negotiation required before option 8 (structured reply)
-server reported: Option 0x8 not permitted before TLS
-
-== check TLS works ==
-image: nbd://127.0.0.1:PORT
-file format: nbd
-virtual size: 64M (67108864 bytes)
-disk size: unavailable
-exports available: 1
- export: ''
-  size:  67108864
-  flags: 0x4ed ( flush fua trim zeroes df cache )
-  min block: 512
-  opt block: 4096
-  max block: 33554432
-  available meta contexts: 1
-   base:allocation
-
-== check TLS with different CA fails ==
-qemu-img: Could not open 'driver=nbd,host=127.0.0.1,port=PORT,tls-creds=tls0': 
The certificate hasn't got a known issuer
-qemu-nbd: The certificate hasn't got a known issuer
-
-== perform I/O over TLS ==
-read 1048576/1048576 bytes at offset 1048576
-1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-wrote 1048576/1048576 bytes at offset 1048576
-1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-read 1048576/1048576 bytes at offset 1048576
-1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-
-== final server log ==
-qemu-nbd: option negotiation failed: Verify failed: No certificate was found.
-qemu-nbd: option negotiation failed: Verify failed: No certificate was found.
-*** done
+qemu-nbd unexpectedly quit


Any ideas how to fix this?

 Thomas