runtime: Test failure: System.Net.NetworkInformation.Tests.NetworkInterfaceBasicTest/BasicTest_AccessInstanceProperties_NoExceptions_Linux

Opened on behalf of @jiangzeng

The test System.Net.NetworkInformation.Tests.NetworkInterfaceBasicTest/BasicTest_AccessInstanceProperties_NoExceptions_Linux has failed.

Assert.InRange() Failure\r
Range:  (0 - 9223372036854775807)\r
Actual: -1

Stack Trace:

   at System.Net.NetworkInformation.Tests.NetworkInterfaceBasicTest.BasicTest_AccessInstanceProperties_NoExceptions_Linux()

Failing configurations:

  • Fedora.23.Amd64
    • AnyCPU-Debug
    • AnyCPU-Release

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 16 (16 by maintainers)

Commits related to this issue

Most upvoted comments

@ManickaP thanks for tracking this down!

Good find @ManickaP. Probably time to bump it to long to get ready for 100G and beyond.

So I added the ethtool eth0 into RunTest.sh and got this:

Settings for eth0:
	Supported ports: [ ]
	Supported link modes:   Not reported
	Supported pause frame use: No
	Supports auto-negotiation: No
	Supported FEC modes: Not reported
	Advertised link modes:  Not reported
	Advertised pause frame use: No
	Advertised auto-negotiation: No
	Advertised FEC modes: Not reported
	Speed: 50000Mb/s
	Duplex: Full
	Port: Other
	PHYAD: 0
	Transceiver: internal
	Auto-negotiation: off
	Link detected: yes

For instance in: https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-pull-32223-merge-389ed0c11d0c4fedb6/System.Net.NetworkInformation.Functional.Tests/console.ec529df2.log?sv=2019-02-02&se=2020-02-23T13%3A17%3A47Z&sr=c&sp=rl&sig=keU1SXAgQX57de4XmOeEL%2FT5IO9iN7xD%2BuOE7LwtZu0%3D. More can be found in the failed tests of this WIP PR https://github.com/dotnet/runtime/pull/32223.

The problem isn’t in the cast, but in the multiplying by 1 000 000 in here: https://github.com/dotnet/runtime/blob/master/src/libraries/Native/Unix/System.Native/pal_interfaceaddresses.c#L380 If you let unchecked(50000*1000000) overflow in int32, you’ll get the incriminating -1539607552.