This is probably best discussed on net-dev rather than core-libs-dev.

Cheers,
David

On 1/12/2018 2:27 am, Volker Simonis wrote:
On Fri, Nov 30, 2018 at 12:20 PM Steve Groeger <groe...@uk.ibm.com> wrote:

Hi Goetz,

I disabled IPv6 on my xLinux box and the MulticastSocket tests pass, as
they detected that IPv6 is not enabled and then didnt try and set the IPv6
options.

Not being a network expert either, I think there's two things to
consider here. It seems that IPv6 can be disabled globally (e.g. in
the Linux kernel) or IPv6 can be enabled globally, but not all network
devices supporting it. A quick search revealed that it seems to be
fairly easy to disable IPv6 on a single interface on Linux while still
having IPv6 globally enabled (see
https://superuser.com/questions/575684/how-to-disable-ipv6-on-a-specific-interface-in-linux).
@Steve Groeger  can you please check if the test still succeeds on
Linux if you only disable IPv6 on the specific interface used by the
test? If it still succeeds, there's probably something to fix on AIX.
If it fails on Linux as well, there may be something to fix in the
test (i.e. to detect that the corresponding interface doesn't support
IPv6) or even in the Java network implementation (i.e. to handle both,
IPv6 and IPv4-only interfaces on an IPv6 enabled system correctly).

Thank you and best regards,
Volker

I am currently unable to disable IPv6 on my AIX box to test this but would
assume it would also work as the code checks to see whether IPv6 is
enabled and doesnt try and set the IPV6 options.
It seems the issue with the tests failing seems to be, if IPv6 is enabled
but the interface doesn't have an IPv6 address associated with it, as in
your case here:

bash-4.3$ ifconfig -a
en0:
flags=1e084863,480<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),CHAIN>
         inet 10.xx.xxx.xxx netmask 0xfffffe00 broadcast 10.xx.xxx.xxx
          tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
lo0:
flags=e08084b,c0<UP,BROADCAST,LOOPBACK,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,LARGESEND,CHAIN>
         inet 127.x.x.x netmask 0xff000000 broadcast 127.xxx.xxx.xxx
         inet6 ::1%1/0
          tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1

where you can see that the en0 interface has an inet address associated
but doesnt have an inet6 address associated.
I can see that IPv6 is enabled as the lo0 interface has an inet6 address
(pointing to localhost)

As I stated below, my AIX system was configured in a similar way to yours
and the tests failed. When I was able to add an inet6 address to en0,
everything works correctly.
NOTE: Not sure this was correct but I ran 'sudo autoconf6' which seemed to
add the inet6 address to my en0 interface. After that all tests worked.

So I think the tests are working as expected, but the AIX system is not
configured correctly, but I would like someone else to confirm this.

Thanks
Steve Groeger
IBM Runtime Technologies
Hursley, Winchester
Tel: (44) 1962 816911  Mobex: 279990  Mobile: 07718 517 129
Fax (44) 1962 816800
Lotus Notes: Steve Groeger/UK/IBM
Internet: groe...@uk.ibm.com

Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU



From:   "Lindenmaier, Goetz" <goetz.lindenma...@sap.com>
To:     Steve Groeger <groe...@uk.ibm.com>, ppc-aix-port-dev
<ppc-aix-port-...@openjdk.java.net>
Date:   30/11/2018 10:18
Subject:        RE: 8207404: MulticastSocket tests failing on Aix



i Steve,

thanks for looking at this issue.

Should these tests work without having IPV6 configured on the interface?
In general, tests should not show errors if a system does not meet
the requirements for the test. In such cases the test should
be skipped somehow. Maybe only a test fix is needed.

Can you check on a non-aix machine without ipv6 whether the test
passes?

Goetz, do you have IPV6 configured on the machine you were running these
tests on?
This is our test machine:

bash-4.3$ ifconfig -a
en0:
flags=1e084863,480<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),CHAIN>
         inet 10.xx.xxx.xxx netmask 0xfffffe00 broadcast 10.xx.xxx.xxx
          tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
lo0:
flags=e08084b,c0<UP,BROADCAST,LOOPBACK,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,LARGESEND,CHAIN>
         inet 127.x.x.x netmask 0xff000000 broadcast 127.xxx.xxx.xxx
         inet6 ::1%1/0
          tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1

I think this message should be posted to core-libs-dev, too. That's also
the list where a potential fix needs to be reviewed.

Best regards,
   Goetz.


-----Original Message-----
From: Steve Groeger <groe...@uk.ibm.com>
Sent: Donnerstag, 29. November 2018 17:07
To: ppc-aix-port-dev <ppc-aix-port-...@openjdk.java.net>
Cc: Lindenmaier, Goetz <goetz.lindenma...@sap.com>
Subject: 8207404: MulticastSocket tests failing on Aix

Hi All,

I have been having a look at this issue:

https://bugs.openjdk.java.net/browse/JDK-8207404

<
https://bugs.openjdk.java.net/browse/JDK-8207404

which was raised by  Goetz Lindenmaier.

When I ran the tests on my AIX system I got the same results as Goetz
listed
in the issue.

Looking at the failure I noticed that it was failing on a setsockopt
call in the
native code in
the PlainDatagramSocketImpl.c file which returned a EADDRNOTAVAIL (Can't
assign requested address)

Looking at my network configuration using "ifconfig -a", I noticed that
my
interface "en0" which the test
was trying to use did not have an inet6 address configured (see below -
some
addresses have been obfuscated with x's).

en0:
flags=1e084863,14c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTI
CAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
         inet 9.20.xx.xx netmask 0xffffff00 broadcast 9.20.xx.xxx
          tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1

configuring the IPV6 on my AIX box I then had a inet6 address configured
for
en0

en0:
flags=1e084863,14c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTI
CAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
         inet 9.20.xx.xx netmask 0xffffff00 broadcast 9.20.xx.xxx
         inet6 fe80::xxxx:xxxx:xxxx:xxxx/64
          tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1

with this configured the MulticastSocket tests all passed.

Should these tests work without having IPV6 configured on the interface?

Goetz, do you have IPV6 configured on the machine you were running these
tests on?

Thanks
Steve Groeger
IBM Runtime Technologies
Hursley, UK
Tel: (44) 1962 816911  Mobex: 279990  Mobile: 07718 517 129
Fax (44) 1962 816800
Lotus Notes: Steve Groeger/UK/IBM
Internet: groe...@uk.ibm.com

Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU





Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU

Reply via email to