Date: Sat, 19 Apr 2003 16:53:18 +0200 From: Vincent Jardin <vjardin@wanadoo.fr> To: freebsd-net@freebsd.org, freebsd-atm@freebsd.org Subject: Netgraph ISR conflict with HARP ISR Message-ID: <200304191653.18655.vjardin@wanadoo.fr>
next in thread | raw e-mail | index | archive | help
Hi, My kernel is compiled with the HARP stack (ie ATM) support. When I load t= he=20 Netgraph module, the HARP stack is not able anymore to process the incomi= ng=20 packets. It is due to the HARP's netisrs entry that is replaced by the Netgraph's = ISR=20 one !!!. For example, see on the enclosed log, netisrs[AF_ATM] is pointed= on=20 ngintr. In fact, it looks like there is a wrong comment within the source code ab= out=20 AF_NETGRAPH and NETISR_NETGRAPH, $ grep AF_NETGRAPH */*h =20 net/netisr.h:#define NETISR_NETGRAPH 30 /* same as AF_NET= GRAPH=20 */ sys/socket.h:#define AF_NETGRAPH 32 /* Netgraph socke= ts */ sys/socket.h:#define PF_NETGRAPH AF_NETGRAPH It means that NETISR_NETGRAPH is not AF_NETGRAPH. In fact it would be=20 impossible because netisrs can contain only 32 entry.=20 netisrs[NETISR_NETGRAPH] would be the 33th one ! whereas netatm/atm_if.h:#define NETISR_ATM AF_ATM sys/socket.h:#define AF_ATM 30 /* ATM */ That's ok, but Netgraph has stolen the ATM ISR entry ;-( What could be the clean solution ? Vincent PS: I get this issue on FreeBSD 4.7: # gdb -k kernel.debug (kgdb) add-symbol-file netgraph.ko 0xc11ee000+0x2a64 add symbol table from file "netgraph.ko" at text_addr =3D 0xc11f0a64? (y or n) y Reading symbols from netgraph.ko...done. (kgdb) p ngintr $5 =3D {void ()} 0xc11f26b8 <ngintr> (kgdb) p atm_intr $6 =3D {void ()} 0xc01d35bc <atm_intr> (kgdb) netisrs[AF_ATM] 0xc11f26b8 ie ngintr !!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304191653.18655.vjardin>