Module Name: src Committed By: yamaguchi Date: Wed Apr 28 09:36:24 UTC 2021
Modified Files: src/sys/net: if_spppsubr.c if_spppvar.h Log Message: Move paese of conf-req, conf-nak and conf-rej into workqueue from softint context When the pases were processed in softint, the state machine in if_spppsubr.c had been broken by simultaneous events on rare occasions. Example: 1. Do ifconfig pppoe* up - lcp open event is enqueued to workqueue 2. Receive conf-ack, and parse the packet - save mru to sp->lcp.their_mru - lcp RCR+ event is enqueued to workqueue 3. Process lcp open event - initialize data including sp->lcp.their_mru 4. Process lcp RCR+ event - Use sp->lcp.their_mru - but it was initialized To generate a diff of this commit: cvs rdiff -u -r1.226 -r1.227 src/sys/net/if_spppsubr.c cvs rdiff -u -r1.33 -r1.34 src/sys/net/if_spppvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.