[Qemu-devel] [PULL v2 0/5] Merge sockets 2017/07/11

Daniel P. Berrange posted 5 patches 6 years, 9 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170712161830.3621-1-berrange@redhat.com
Test FreeBSD passed
Test checkpatch passed
Test docker passed
Test s390x passed
There is a newer version of this series
io/dns-resolver.c          |   6 +-
tests/.gitignore           |   1 +
tests/Makefile.include     |   3 +
tests/test-sockets-proto.c | 924 +++++++++++++++++++++++++++++++++++++++++++++
util/qemu-sockets.c        |  71 +++-
5 files changed, 984 insertions(+), 21 deletions(-)
create mode 100644 tests/test-sockets-proto.c
[Qemu-devel] [PULL v2 0/5] Merge sockets 2017/07/11
Posted by Daniel P. Berrange 6 years, 9 months ago
The following changes since commit 3d0bf8dfdfebd7f2ae41b6f220444b8047d6b1ee:

  Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20170710a' into staging (2017-07-10 18:13:03 +0100)

are available in the git repository at:

  git://github.com/berrange/qemu tags/pull-sockets-2017-07-11-2

for you to fetch changes up to 4b1ac1b3abf0d07cd4d9f9011f12d62bff27154c:

  tests: add functional test validating ipv4/ipv6 address flag handling (2017-07-12 16:49:00 +0100)

----------------------------------------------------------------
Merge sockets 2017/07/11 v2

----------------------------------------------------------------
Daniel P. Berrange (5):
  sockets: ensure we can bind to both ipv4 & ipv6 separately
  sockets: don't block IPv4 clients when listening on "::"
  sockets: ensure we don't accept IPv4 clients when IPv4 is disabled
  io: preserve ipv4/ipv6 flags when resolving InetSocketAddress
  tests: add functional test validating ipv4/ipv6 address flag handling

 io/dns-resolver.c          |   6 +-
 tests/.gitignore           |   1 +
 tests/Makefile.include     |   3 +
 tests/test-sockets-proto.c | 924 +++++++++++++++++++++++++++++++++++++++++++++
 util/qemu-sockets.c        |  71 +++-
 5 files changed, 984 insertions(+), 21 deletions(-)
 create mode 100644 tests/test-sockets-proto.c

-- 
2.9.4


Re: [Qemu-devel] [PULL v2 0/5] Merge sockets 2017/07/11
Posted by Philippe Mathieu-Daudé 6 years, 9 months ago
Hi Daniel,

On 07/12/2017 01:18 PM, Daniel P. Berrange wrote:
> The following changes since commit 3d0bf8dfdfebd7f2ae41b6f220444b8047d6b1ee:
> 
>    Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20170710a' into staging (2017-07-10 18:13:03 +0100)
> 
> are available in the git repository at:
> 
>    git://github.com/berrange/qemu tags/pull-sockets-2017-07-11-2
> 
> for you to fetch changes up to 4b1ac1b3abf0d07cd4d9f9011f12d62bff27154c:
> 
>    tests: add functional test validating ipv4/ipv6 address flag handling (2017-07-12 16:49:00 +0100)
> 
> ----------------------------------------------------------------
> Merge sockets 2017/07/11 v2

$ git diff pull-sockets-2017-07-11-1..pull-sockets-2017-07-11-2

As I understand, diff since v1 is:

- restricted sockets-proto tests to x86_64
- run tests using INADDR_LOOPBACK instead of INADDR_ANY

signed PR, else:
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

> 
> ----------------------------------------------------------------
> Daniel P. Berrange (5):
>    sockets: ensure we can bind to both ipv4 & ipv6 separately
>    sockets: don't block IPv4 clients when listening on "::"
>    sockets: ensure we don't accept IPv4 clients when IPv4 is disabled
>    io: preserve ipv4/ipv6 flags when resolving InetSocketAddress
>    tests: add functional test validating ipv4/ipv6 address flag handling
> 
>   io/dns-resolver.c          |   6 +-
>   tests/.gitignore           |   1 +
>   tests/Makefile.include     |   3 +
>   tests/test-sockets-proto.c | 924 +++++++++++++++++++++++++++++++++++++++++++++
>   util/qemu-sockets.c        |  71 +++-
>   5 files changed, 984 insertions(+), 21 deletions(-)
>   create mode 100644 tests/test-sockets-proto.c
> 

Re: [Qemu-devel] [PULL v2 0/5] Merge sockets 2017/07/11
Posted by Peter Maydell 6 years, 9 months ago
On 12 July 2017 at 17:18, Daniel P. Berrange <berrange@redhat.com> wrote:
> The following changes since commit 3d0bf8dfdfebd7f2ae41b6f220444b8047d6b1ee:
>
>   Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20170710a' into staging (2017-07-10 18:13:03 +0100)
>
> are available in the git repository at:
>
>   git://github.com/berrange/qemu tags/pull-sockets-2017-07-11-2
>
> for you to fetch changes up to 4b1ac1b3abf0d07cd4d9f9011f12d62bff27154c:
>
>   tests: add functional test validating ipv4/ipv6 address flag handling (2017-07-12 16:49:00 +0100)
>
> ----------------------------------------------------------------
> Merge sockets 2017/07/11 v2
>
> ----------------------------------------------------------------
> Daniel P. Berrange (5):
>   sockets: ensure we can bind to both ipv4 & ipv6 separately
>   sockets: don't block IPv4 clients when listening on "::"
>   sockets: ensure we don't accept IPv4 clients when IPv4 is disabled
>   io: preserve ipv4/ipv6 flags when resolving InetSocketAddress
>   tests: add functional test validating ipv4/ipv6 address flag handling

This failed 'make check' on s390x host:

TEST: tests/test-sockets-proto... (pid=28872)
  /sockets/migrate/wildcard/all:                                       OK
[...]
  /sockets/chardev/::/ipv4onipv6on:                                    OK
  /sockets/chardev/::/ipv4offipv6off:                                  OK
  /sockets/net/wildcard/all:                                           **
ERROR:/home/linux1/qemu/tests/test-sockets-proto.c:849:test_listen:
assertion failed: (data->ipv4 == 0)
FAIL
GTester: last random seed: R02S575d305465be93e6120318b4f8434263
(pid=29314)
FAIL: tests/test-sockets-proto

thanks
-- PMM

Re: [Qemu-devel] [PULL v2 0/5] Merge sockets 2017/07/11
Posted by Christian Borntraeger 6 years, 9 months ago
On 07/14/2017 10:36 AM, Peter Maydell wrote:
> On 12 July 2017 at 17:18, Daniel P. Berrange <berrange@redhat.com> wrote:
>> The following changes since commit 3d0bf8dfdfebd7f2ae41b6f220444b8047d6b1ee:
>>
>>   Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20170710a' into staging (2017-07-10 18:13:03 +0100)
>>
>> are available in the git repository at:
>>
>>   git://github.com/berrange/qemu tags/pull-sockets-2017-07-11-2
>>
>> for you to fetch changes up to 4b1ac1b3abf0d07cd4d9f9011f12d62bff27154c:
>>
>>   tests: add functional test validating ipv4/ipv6 address flag handling (2017-07-12 16:49:00 +0100)
>>
>> ----------------------------------------------------------------
>> Merge sockets 2017/07/11 v2
>>
>> ----------------------------------------------------------------
>> Daniel P. Berrange (5):
>>   sockets: ensure we can bind to both ipv4 & ipv6 separately
>>   sockets: don't block IPv4 clients when listening on "::"
>>   sockets: ensure we don't accept IPv4 clients when IPv4 is disabled
>>   io: preserve ipv4/ipv6 flags when resolving InetSocketAddress
>>   tests: add functional test validating ipv4/ipv6 address flag handling
> 
> This failed 'make check' on s390x host:
> 
> TEST: tests/test-sockets-proto... (pid=28872)
>   /sockets/migrate/wildcard/all:                                       OK
> [...]
>   /sockets/chardev/::/ipv4onipv6on:                                    OK
>   /sockets/chardev/::/ipv4offipv6off:                                  OK
>   /sockets/net/wildcard/all:                                           **
> ERROR:/home/linux1/qemu/tests/test-sockets-proto.c:849:test_listen:
> assertion failed: (data->ipv4 == 0)
> FAIL
> GTester: last random seed: R02S575d305465be93e6120318b4f8434263
> (pid=29314)
> FAIL: tests/test-sockets-proto
> 


FWIW, I tried to reproduce on my system (Fedora 24 s390x), 
but qemu/master + this pull + configure + make check did compile the test-sockets-proto
test, but it does not execute it. Any idea why not?

Running it manually did succeed, though. (no errors) 


Re: [Qemu-devel] [PULL v2 0/5] Merge sockets 2017/07/11
Posted by Daniel P. Berrange 6 years, 9 months ago
On Fri, Jul 14, 2017 at 11:18:33AM +0200, Christian Borntraeger wrote:
> On 07/14/2017 10:36 AM, Peter Maydell wrote:
> > On 12 July 2017 at 17:18, Daniel P. Berrange <berrange@redhat.com> wrote:
> >> The following changes since commit 3d0bf8dfdfebd7f2ae41b6f220444b8047d6b1ee:
> >>
> >>   Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20170710a' into staging (2017-07-10 18:13:03 +0100)
> >>
> >> are available in the git repository at:
> >>
> >>   git://github.com/berrange/qemu tags/pull-sockets-2017-07-11-2
> >>
> >> for you to fetch changes up to 4b1ac1b3abf0d07cd4d9f9011f12d62bff27154c:
> >>
> >>   tests: add functional test validating ipv4/ipv6 address flag handling (2017-07-12 16:49:00 +0100)
> >>
> >> ----------------------------------------------------------------
> >> Merge sockets 2017/07/11 v2
> >>
> >> ----------------------------------------------------------------
> >> Daniel P. Berrange (5):
> >>   sockets: ensure we can bind to both ipv4 & ipv6 separately
> >>   sockets: don't block IPv4 clients when listening on "::"
> >>   sockets: ensure we don't accept IPv4 clients when IPv4 is disabled
> >>   io: preserve ipv4/ipv6 flags when resolving InetSocketAddress
> >>   tests: add functional test validating ipv4/ipv6 address flag handling
> > 
> > This failed 'make check' on s390x host:
> > 
> > TEST: tests/test-sockets-proto... (pid=28872)
> >   /sockets/migrate/wildcard/all:                                       OK
> > [...]
> >   /sockets/chardev/::/ipv4onipv6on:                                    OK
> >   /sockets/chardev/::/ipv4offipv6off:                                  OK
> >   /sockets/net/wildcard/all:                                           **
> > ERROR:/home/linux1/qemu/tests/test-sockets-proto.c:849:test_listen:
> > assertion failed: (data->ipv4 == 0)
> > FAIL
> > GTester: last random seed: R02S575d305465be93e6120318b4f8434263
> > (pid=29314)
> > FAIL: tests/test-sockets-proto
> > 
> 
> 
> FWIW, I tried to reproduce on my system (Fedora 24 s390x), 
> but qemu/master + this pull + configure + make check did compile the test-sockets-proto
> test, but it does not execute it. Any idea why not?

It is only set to run with the  x86_64 system emulator by default, since I
felt it a waste of time to run the same test with multuple emulators as it
isn't arch specific.  eg  make check-qtest-x86_64   only


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 :|

Re: [Qemu-devel] [PULL v2 0/5] Merge sockets 2017/07/11
Posted by Daniel P. Berrange 6 years, 9 months ago
On Fri, Jul 14, 2017 at 09:36:15AM +0100, Peter Maydell wrote:
> On 12 July 2017 at 17:18, Daniel P. Berrange <berrange@redhat.com> wrote:
> > The following changes since commit 3d0bf8dfdfebd7f2ae41b6f220444b8047d6b1ee:
> >
> >   Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20170710a' into staging (2017-07-10 18:13:03 +0100)
> >
> > are available in the git repository at:
> >
> >   git://github.com/berrange/qemu tags/pull-sockets-2017-07-11-2
> >
> > for you to fetch changes up to 4b1ac1b3abf0d07cd4d9f9011f12d62bff27154c:
> >
> >   tests: add functional test validating ipv4/ipv6 address flag handling (2017-07-12 16:49:00 +0100)
> >
> > ----------------------------------------------------------------
> > Merge sockets 2017/07/11 v2
> >
> > ----------------------------------------------------------------
> > Daniel P. Berrange (5):
> >   sockets: ensure we can bind to both ipv4 & ipv6 separately
> >   sockets: don't block IPv4 clients when listening on "::"
> >   sockets: ensure we don't accept IPv4 clients when IPv4 is disabled
> >   io: preserve ipv4/ipv6 flags when resolving InetSocketAddress
> >   tests: add functional test validating ipv4/ipv6 address flag handling
> 
> This failed 'make check' on s390x host:
> 
> TEST: tests/test-sockets-proto... (pid=28872)
>   /sockets/migrate/wildcard/all:                                       OK
> [...]
>   /sockets/chardev/::/ipv4onipv6on:                                    OK
>   /sockets/chardev/::/ipv4offipv6off:                                  OK
>   /sockets/net/wildcard/all:                                           **
> ERROR:/home/linux1/qemu/tests/test-sockets-proto.c:849:test_listen:
> assertion failed: (data->ipv4 == 0)
> FAIL
> GTester: last random seed: R02S575d305465be93e6120318b4f8434263
> (pid=29314)
> FAIL: tests/test-sockets-proto

Given the amount of trouble I've had making this test suite work reliably
across all build envs, and the impeding freeze deadline, I've just decided
to drop the test suite patch.

I'll queue the test suite again next cycle when I've more time to debug
it.

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 :|