#13698 closed bug (fixed)

Network stopped working on haiku nightly hrev50967

Reported by: addos Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: Drivers/Network/ipro1000 Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

I did a bisection of tests with the nightlies to track down which nightly I last had working internet on. The last build was hrev50779. After that, it looks like dhcp assigns an ip to the interface ipro1000, but I can't ping anything and websites don't load in webpositive. I can't connect to irc in vision. Need assistance tracking down what changed.

Attachments (2)

syslog2 (11.2 KB) - added by addos 23 months ago.
syslog.tar.gz (62.2 KB) - added by addos 23 months ago.

Download all attachments as: .zip

Change History (20)

comment:1 Changed 23 months ago by diver

So the last working build was hrev50779? What was the next you tried which was broken?

comment:2 Changed 23 months ago by addos

hrev50779 was last build that worked hrev50967 was first nightly that networking stopped working.

comment:4 Changed 23 months ago by addos

Those were the only two builds I could download from the haiku nightly site. Are there any intermediate builds available somewhere I could try, to try to narrow it down further?

https://download.haiku-os.org/nightly-images/x86_gcc2_hybrid/

comment:5 Changed 23 months ago by humdinger

Thanks to package management, you can easily downgrade to any hrev.

comment:6 Changed 23 months ago by addos

So using the pkgman system, it looks like the build where it last worked was hrev50812 and it broke in hrev50813, assuming I did everything right.

Last edited 23 months ago by korli (previous) (diff)

Changed 23 months ago by addos

Attachment: syslog2 added

comment:8 Changed 23 months ago by addos

http://cgit.haiku-os.org/haiku/commit/?id=e32c64c113053d4a3e4cfdb50a8ce64b8c1a60eb looks suspicious since it impacts the network card I am using

comment:9 Changed 23 months ago by diver

Odd, that commit simply added new PCI IDs and didn't change anything.

comment:10 Changed 23 months ago by korli

addos, the syslog is incomplete.

comment:11 in reply to:  9 Changed 23 months ago by korli

Replying to diver:

Odd, that commit simply added new PCI IDs and didn't change anything.

At least the part with driver.c should be reverted as it affects the old driver beos_ipro1000.

Seeing the typos in driver.c, it doesn't compile anyway (";" instead of ":").

comment:12 Changed 23 months ago by diver

Ah, so the old ipro1000 is used for these cards now? Nice catch!

Changed 23 months ago by addos

Attachment: syslog.tar.gz added

comment:13 Changed 23 months ago by diver

Component: - GeneralDrivers/Network/ipro1000

comment:14 Changed 23 months ago by korli

grep -R E1000_DEV_ID_82541GI_LF
dev/e1000/if_em.c:	{ 0x8086, E1000_DEV_ID_82541GI_LF,	PCI_ANY_ID, PCI_ANY_ID, 0},
dev/e1000/e1000_hw.h:#define E1000_DEV_ID_82541GI_LF			0x107C
dev/e1000/if_lem.c:	{ 0x8086, E1000_DEV_ID_82541GI_LF,	PCI_ANY_ID, PCI_ANY_ID, 0},
dev/e1000/e1000_api.c:	case E1000_DEV_ID_82541GI_LF:

Your device ID is now declared for both driver if_em.c and if_lem.c. To compare with FreeBSD: http://fxr.watson.org/fxr/ident?v=FREEBSD9;i=E1000_DEV_ID_82541GI_LF

Defined as a preprocessor macro in:

    dev/e1000/e1000_hw.h, line 75 

Referenced (in 3 files total) in:

    dev/e1000/e1000_hw.h, line 75
    dev/e1000/if_lem.c, line 115
    dev/e1000/e1000_api.c, line 207 

Obviously the addition of IDs is the problem.

comment:15 Changed 23 months ago by korli

So let's try what's common:

egrep  "(E1000_DEV_ID_[^,]+)," if_em.c  | sed -e "s/^.*8086, //g" | sed -e "s/,.*//g" | sort > em.ids
egrep  "(E1000_DEV_ID_[^,]+)," if_lem.c  | sed -e "s/^.*8086, //g" | sed -e "s/,.*//g" | sort > lem.ids
comm -12 em.ids lem.ids

Result:

E1000_DEV_ID_82540EM
E1000_DEV_ID_82540EM_LOM
E1000_DEV_ID_82540EP
E1000_DEV_ID_82540EP_LOM
E1000_DEV_ID_82540EP_LP
E1000_DEV_ID_82541EI
E1000_DEV_ID_82541EI_MOBILE
E1000_DEV_ID_82541ER
E1000_DEV_ID_82541ER_LOM
E1000_DEV_ID_82541GI
E1000_DEV_ID_82541GI_LF
E1000_DEV_ID_82541GI_MOBILE
E1000_DEV_ID_82542
E1000_DEV_ID_82543GC_COPPER
E1000_DEV_ID_82543GC_FIBER
E1000_DEV_ID_82544EI_COPPER
E1000_DEV_ID_82544EI_FIBER
E1000_DEV_ID_82544GC_COPPER
E1000_DEV_ID_82544GC_LOM
E1000_DEV_ID_82545EM_COPPER
E1000_DEV_ID_82545EM_FIBER
E1000_DEV_ID_82545GM_COPPER
E1000_DEV_ID_82545GM_FIBER
E1000_DEV_ID_82545GM_SERDES
E1000_DEV_ID_82546EB_COPPER
E1000_DEV_ID_82546EB_FIBER
E1000_DEV_ID_82546EB_QUAD_COPPER
E1000_DEV_ID_82546GB_COPPER
E1000_DEV_ID_82546GB_FIBER
E1000_DEV_ID_82546GB_PCIE
E1000_DEV_ID_82546GB_QUAD_COPPER
E1000_DEV_ID_82546GB_QUAD_COPPER_KSP3
E1000_DEV_ID_82546GB_SERDES
E1000_DEV_ID_82547EI
E1000_DEV_ID_82547EI_MOBILE
E1000_DEV_ID_82547GI

comment:16 Changed 23 months ago by korli

Clean up done in hrev51417.

comment:17 Changed 23 months ago by addos

Hey, wanted to confirm that I booted the latest nightly and networking is working as expected.

comment:18 Changed 23 months ago by korli

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.