Opened 21 months ago

Last modified 15 months ago

#820 reopened defect

problem with network interface with freenas 8.0.1rc2

Reported by: nirvanaguy19 Owned by:
Priority: major Milestone:
Component: FreeBSD Version: 8.0.4-RELEASE
Keywords: Cc: matt.scharley@…

Description

I have installed freenas 8.0.1rc2 on intel atom d410pt board with network a Realtek RTL8103E chipset (100mbps).

freenas recognized the interface but dhcp doesnt work not does manually setting the ip. for dhcp i see in router log that dchpoffer is sent but freenas doesnt discover that and times out saying no dhcpoffers received and with manually setting the ip ifconfig shows status as active but i cant ping any of the nodes in the same subnet

Attachments (8)

debug_output (158.3 KB) - added by nirvanaguy19 21 months ago.
debug output
DamzFishdebug_output (97.9 KB) - added by Damz Fish 21 months ago.
DamzFishdmesg (5.2 KB) - added by Damz Fish 21 months ago.
DamzFishpciconf_lcbv (6.2 KB) - added by Damz Fish 21 months ago.
DamzFishifconfig_re0 (323 bytes) - added by Damz Fish 21 months ago.
DamzFishtcpdump_ifconfig (317 bytes) - added by Damz Fish 21 months ago.
DamzFishtcpdump_dhclient (5.5 KB) - added by Damz Fish 21 months ago.
damzfish_vmstat (624 bytes) - added by Damz Fish 21 months ago.

Download all attachments as: .zip

Change History (29)

comment:1 Changed 21 months ago by gcooper

  1. Is this a regression from an earlier version of 8.x?
  2. Have you tried loading 0.7.x?
  3. Can you attach your freenas-debug -a output to the ticket?

Changed 21 months ago by nirvanaguy19

debug output

comment:2 Changed 21 months ago by nirvanaguy19

1) This is a problem i only found with 8.0.1rc2, it worked fine in 8.0 release
2) never tried 0.7.x as it worked in 8.0
3) have attached debug output

comment:3 Changed 21 months ago by delphij

Hi,

I've contacted Pyun and checked the code myself but neither of us have clue yet. Would you please also send the output from the following command per Pyun's suggestion?

  • dmesg output related with re(4), re(4) may have shown important controller signature
  • dmesg output related with PHY driver (The two above can be obtained by doing 'dmesg | grep -A5 -B5 re0')
  • 'pciconf -lcbv' output
  • Does the user see LED light on his/her controller?
  • 'ifconfig re0' output after dhclient failed (I'd use the output from debug_output you already submitted).

comment:4 follow-up: Changed 21 months ago by Damz Fish

I have the same problem with a Realtek RTL8111E chipset, I send my own debug information.

Changed 21 months ago by Damz Fish

Changed 21 months ago by Damz Fish

Changed 21 months ago by Damz Fish

Changed 21 months ago by Damz Fish

comment:5 in reply to: ↑ 4 Changed 21 months ago by delphij

Hi,

Replying to Damz Fish:

I have the same problem with a Realtek RTL8111E chipset, I send my own debug information.

Could you try running the following commands on CLI shell:

mount -uw /
echo hw.re.msix_disable=1 >> /boot/loader.conf
reboot

And see if there is any improvement?

comment:6 follow-up: Changed 21 months ago by Damz Fish

No improvement

comment:7 in reply to: ↑ 6 Changed 21 months ago by delphij

Replying to Damz Fish:

No improvement

I see, please remove that change:

mount -uw /
cp /boot/loader.conf /tmp
cat /tmp/loader.conf | grep -v hw.re.msix_disable > /boot/loader.conf
reboot

Pyun have suggested a few things to try, as he could not reproduce your issue on the sample board he have:

  • Up the interface without assigning any IP address and run tcpdump and see whether it can see broadcast frames(ARP etc) sent from switch:
    ifconfig re0 inet [IP address/mask, e.g. 10.2.0.4/24] up
    tcpdump -X -e -v -i re0
    

Normally you should see a few ARP broadcasts (change the IP address to match your setup).

  • If you can't see any frames, try unplug the cable and replug it.
  • If he/didn't cold boot after upgrading from previous version, cold restart would be worth to try.
  • If he/she can see the frame, run dhclient with tcpdump running which will make the controller run with promiscuous mode.
    tcpdump -X -e -vv -i re0
    dhclient re0
    

Thanks in advance!

comment:8 follow-ups: Changed 21 months ago by Damz Fish

I can't see any any frame.

comment:9 in reply to: ↑ 8 Changed 21 months ago by delphij

Replying to Damz Fish:

I can't see any any frame.

May I assume this is after pull and plug your cable and do 'dhclient'? (I think you should see the dhcp client doing requests?)

comment:10 in reply to: ↑ 8 ; follow-up: Changed 21 months ago by delphij

By the way can you post what 'vmstat -i' give?

If the values are zero, can you try:

mount -uw /
echo hw.re.msi_disable=1 >> /boot/loader.conf
echo hw.re.msix_disable=1 >> /boot/loader.conf
reboot

? This disables both MSI and MSI-X.

comment:11 Changed 21 months ago by Damz Fish

I have make an error. I give you my tcpdump result.

Changed 21 months ago by Damz Fish

Changed 21 months ago by Damz Fish

Changed 21 months ago by Damz Fish

comment:12 in reply to: ↑ 10 ; follow-up: Changed 21 months ago by Damz Fish

Replying to delphij:

By the way can you post what 'vmstat -i' give?

If the values are zero, can you try:

mount -uw /
echo hw.re.msi_disable=1 >> /boot/loader.conf
echo hw.re.msix_disable=1 >> /boot/loader.conf
reboot

? This disables both MSI and MSI-X.

I have post my vmstat -i result.
And I test disable msi and msix but it's not work.

Last edited 21 months ago by Damz Fish (previous) (diff)

comment:13 in reply to: ↑ 12 Changed 20 months ago by delphij

Replying to Damz Fish:

I have post my vmstat -i result.
And I test disable msi and msix but it's not work.

Is there any interrupts (vmstat -i for network cards) at all when MSI and MSI-X disabled?

comment:14 Changed 18 months ago by gcooper

Closing the ticket due to lack of feedback. Please reopen the ticket when you have a chance to provide more details about your issue.

comment:15 Changed 18 months ago by gcooper

  • Resolution set to invalid
  • Status changed from new to closed

comment:16 Changed 17 months ago by mscharley

  • Cc matt.scharley@… added
  • Resolution invalid deleted
  • Status changed from closed to reopened
  • Version changed from 8.0.1-RC2 to 8.0.3-RELEASE-p1

Hi, I have a similar issue with the same card (RTL8111E) on a ASRock motherboard on 8.0.3 64-bit.

I've disabled MSI and MSI-X, but freenas is ignoring the DHCP offers. I can see the requests going out, but the offers are not showing, although my routers log says it is sending them. vmstat -i is only being incremented for the requests.

Trying to ping my router with a static IP address setup generates a lot of ARP requests in tcpdump, but no replies. Again, my router says it's sending replies.

Last edited 17 months ago by mscharley (previous) (diff)

comment:17 Changed 17 months ago by mscharley

Well, this is weird. I re-enabled MSI and MSI-X last night, rebooted and it was not working. Now this morning I've tweaked some settings in UEFI, and now it seems to be working just fine. I can't remember exactly what I changed now as I worked through the entire list of settings, but I know I turned off several onboard devices that I won't be using. Perhaps there was a conflict somewhere? If anyone thinks that I might be able to provide more info to help diagnose, then please feel free to ask, otherwise feel free to close this again.

comment:18 Changed 16 months ago by maledyris

I've also been struggling with this problem on an RTL8101E, but I think I have a solution.

For my card, this problem is intermittent with the card receiving an ip successfully after a reboot maybe 10% of the time or less. Sometimes powering down completely and leaving the machine off for awhile helped increase the odds. On rare occasions there are DHCPOFFERS from the router, but no DHCPREQUESTS from the machine. Usually there are no replies at all to DHCPDISCOVER.
The problem seems to be that most variations of these Realtek chipsets are not supported on FreeBSD. The solution was to go to the Realtek website and download the FreeBSD "drivers" (actually source). In the tar file, there is a read me with steps on what to do to compile for a FreeBSD system. If you run steps 3 and 4 in a FreeBSD virtual machine, you can then retrieve the if_re.ko that was created in the current working directory. Using a USB drive you can copy that file to /boot/kernel/ on the FreeNAS system, then edit /boot/loader.conf and add

if_re_load="YES"

On reboot of the system, the Realtek ethernet controller should be working flawlessly.

comment:19 follow-up: Changed 15 months ago by gcooper

  • Priority changed from blocker to major

Reducing the severity as there's a workaround that can be employed.

I have a machine that exhibits problems with the link speed (always connects at 10/100MBps -- it's a driver bug with how the re chipset is detected). I'll provide more details later.

comment:20 Changed 15 months ago by gcooper

  • Component changed from Backend to FreeBSD
  • Version changed from 8.0.3-RELEASE-p1 to 8.0.4-RELEASE

comment:21 in reply to: ↑ 19 Changed 15 months ago by gcooper

Replying to gcooper:

Reducing the severity as there's a workaround that can be employed.

I have a machine that exhibits problems with the link speed (always connects at 10/100MBps -- it's a driver bug with how the re chipset is detected). I'll provide more details later.

And then he discovers that some chipsets are actually only 10/100MBit capable...

I have the same chipset as the OP without any of the issues that the OP is describing in the latest version.

Note: See TracTickets for help on using tickets.