nfe(4) for nVidia GigE

Matthew Dillon dillon at apollo.backplane.com
Sun Aug 20 10:25:46 PDT 2006


:On 7/25/06, Sepherosa Ziehau <sepherosa at xxxxxxxxx> wrote:
:> Hi all,
:>
:> I have ported nfe(4) from OpenBSD, which supports various nVidia GigE
:> and is open source:
:> http://leaf.dragonflybsd.org/~sephe/nfe.tbz
:>
:
:I have updated it, and will commit this updated version next week, if
:no objection comes.
:
:Please review/test it.
:
:Best Regards,
:sephe
:
:-- 
:Live Free or Die

    Oooh.  Very nice.  And I happen to have test boxes with nVidia chipsets
    that the driver recognizes!

    I got an assertion when I tried to ifconfig it up.  I think the issue
    is simply that the serializer has already been acquired when nfe_jalloc()
    or nfe_jfree() are called (since you also specified it when you
    installed the interrupt vector).  If I remove the serializer calls
    from those two routines I can ifconfig it up.

					-Matt
					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>

agp0: <NVIDIA Generic AGP Controller> mem 0xf4000000-0xf7ffffff at device 0.0 on pci0
agp0: Unable to find NVIDIA Memory Controller 1.
device_probe_and_attach: agp0 attach returned 19
nfe0: <NVIDIA nForce3 Gigabit Ethernet> port 0xfc00-0xfc07 mem 0xfdffc000-0xfdffcfff irq 10 at device 5.0 on pci0
nfe0: MAC address: 00:30:1b:b8:a9:f5
miibus0: <MII bus> on nfe0
e1000phy0: <Marvell 88E1111 Gigabit PHY> on miibus0
e1000phy0:  1000baseTX-FDX, 100baseTX-FDX, 100baseTX, 10baseTX-FDX, 10baseTX, auto
panic: assertion: s->last_td != curthread in lwkt_serialize_enter
mp_lock = 00000001; cpuid = 1; lapic.id = 01000000
Trace beginning at frame 0xd5f2999c
panic(c05337b4,1000000,c0522050,d5f299cc,d5decf00) at panic+0x17f
panic(c0522050,c0533f47,c0509c57,2,d5decf00) at panic+0x17f
lwkt_serialize_enter(d60d6a54,d60d68b8,d5decf00,d60d72e0,d5f29a20) at lwkt_seria
lize_enter+0x3a
nfe_jalloc(d60d68b8,1,0,c06570c0,d60d880c) at nfe_jalloc+0x1d
nfe_newbuf_jumbo(d60d68b8,d60d72e0,0,1,d60d68b8) at nfe_newbuf_jumbo+0x4f
nfe_init_rx_ring(d60d68b8,d60d72e0,c0453b96,d5eb29c0,8020690c) at nfe_init_rx_ri
ng+0x35
nfe_init(d60d68b8,0,0,d5bf6828,8020690c) at nfe_init+0x4a
ether_ioctl(d60d68b8,8020690c,d5bf6828,d5f29ab0,0) at ether_ioctl+0x8f
nfe_ioctl(d60d68b8,8020690c,d5bf6828,0,0) at nfe_ioctl+0x136
in_ifinit(d60d68b8,d5bf6828,d5f29c24,0,c02b6ded) at in_ifinit+0x1c7
in_control(d2fe7340,8040691a,d5f29c14,d60d68b8,cecb6800) at in_control+0x896
so_pru_control(d2fe7340,8040691a,d5f29c14,d60d68b8,cecb6800) at so_pru_control+0
x39
ifioctl(d2fe7340,8040691a,d5f29c14,c2465388,0) at ifioctl+0xace
soo_ioctl(d58c1c80,8040691a,d5f29c14,c2465388,2808d000) at soo_ioctl+0x19c
mapped_ioctl(3,8040691a,808d000,0,d5f29d40) at mapped_ioctl+0x4b0
sys_ioctl(d5f29cf4,d5f29cfc,c,2808f000,1) at sys_ioctl+0x2a
syscall2(2f,2f,2f,808a3a0,0) at syscall2+0x24c
Xint0x80_syscall() at Xint0x80_syscall+0x2a
Debugger("panic")

CPU1 stopping CPUs: 0x00000001
 stopped
Stopped at      Debugger+0x44:  movb    $0,in_Debugger.0






More information about the Submit mailing list