diff options
author | rik <rik@FreeBSD.org> | 2004-12-12 14:54:15 +0000 |
---|---|---|
committer | rik <rik@FreeBSD.org> | 2004-12-12 14:54:15 +0000 |
commit | a09ae8d2bf0fca60091670de2c7a81a8335f82c8 (patch) | |
tree | ff8a4d488990fc99db4c6cf0d6e23b283298a427 /sys/net/if_sppp.h | |
parent | 729dda8f41bc7c5ec5b66365091b7cb2217b9cfa (diff) | |
download | FreeBSD-src-a09ae8d2bf0fca60091670de2c7a81a8335f82c8.zip FreeBSD-src-a09ae8d2bf0fca60091670de2c7a81a8335f82c8.tar.gz |
Make sppp MPSAFE.
MPSAFE could be turned off by IFF_NEEDSGIANT.
Silence on: net@, current@, hackers@.
No objections: joerg
Diffstat (limited to 'sys/net/if_sppp.h')
-rw-r--r-- | sys/net/if_sppp.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/net/if_sppp.h b/sys/net/if_sppp.h index e602aa5..d253ee7 100644 --- a/sys/net/if_sppp.h +++ b/sys/net/if_sppp.h @@ -156,8 +156,9 @@ struct sppp { #define CONF_ENABLE_IPV6 0x02 /* IPv6 administratively enabled */ time_t pp_last_recv; /* time last packet has been received */ time_t pp_last_sent; /* time last packet has been sent */ - struct callout_handle ch[IDX_COUNT]; /* per-proto and if callouts */ - struct callout_handle pap_my_to_ch; /* PAP needs one more... */ + struct callout ch[IDX_COUNT]; /* per-proto and if callouts */ + struct callout pap_my_to_ch; /* PAP needs one more... */ + struct callout keepalive_callout; /* keepalive callout */ struct slcp lcp; /* LCP params */ struct sipcp ipcp; /* IPCP params */ struct sipcp ipv6cp; /* IPv6CP params */ @@ -194,6 +195,11 @@ struct sppp { /* These two fields are for use by the lower layer */ void *pp_lowerp; int pp_loweri; + /* Lock */ + struct mtx mtx; + /* if_start () wrapper */ + void (*if_start) (struct ifnet *); + struct callout ifstart_callout; /* if_start () scheduler */ }; /* bits for pp_flags */ |