From e194f5cbd7677b14292463d8d1a11200c37d522a Mon Sep 17 00:00:00 2001 From: peter Date: Sat, 31 May 1997 10:13:46 +0000 Subject: Bruce mentioned to me that Paul Traina had noticed that the ppp_tty interrupt mask hackery wasn't happening when being modloaded via the if_ppp lkm. It seems that the lkm system doesn't particularly like having two sets of load/unload/etc routines. :-] This really should be fixed by having a seperate if_ppp and ppp_tty lkm, but that requires that ppp_tty is loaded after if_ppp, and needs to be able to link with symbols in if_ppp. This gets messy, it is a better task for the in-kernel linker. (if_ppp is generic, ppp_tty is a tty-specific bottom end for if_ppp, it's not _too_ hard to have another "provider" (such as a hdlc sync card) connected to if_ppp) --- sys/net/if_ppp.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'sys/net/if_ppp.c') diff --git a/sys/net/if_ppp.c b/sys/net/if_ppp.c index 2abdf2d..c75eb39 100644 --- a/sys/net/if_ppp.c +++ b/sys/net/if_ppp.c @@ -69,7 +69,7 @@ * Paul Mackerras (paulus@cs.anu.edu.au). */ -/* $Id: if_ppp.c,v 1.39 1997/02/22 09:41:03 peter Exp $ */ +/* $Id: if_ppp.c,v 1.40 1997/03/24 11:52:29 bde Exp $ */ /* from if_ppp.c,v 1.5 1995/08/16 01:36:38 paulus Exp */ /* from if_sl.c,v 1.11 84/10/04 12:54:47 rick Exp */ @@ -126,6 +126,9 @@ struct ppp_softc ppp_softc[NPPP]; +/* XXX layering violation */ +extern void pppasyncattach __P((void *)); + static void pppattach __P((void *)); PSEUDO_SET(pppattach, if_ppp); @@ -206,6 +209,11 @@ pppattach(dummy) #endif } register_netisr(NETISR_PPP, pppintr); + /* + * XXX layering violation - if_ppp can work over any lower level + * transport that cares to attach to it. + */ + pppasyncattach(dummy); } /* -- cgit v1.1