ozaki-r 89a45bc13c Fix deadlock between key_sendup_mbuf called from key_acquire and localcount_drain
If we call key_sendup_mbuf from key_acquire that is called on packet
processing, a deadlock can happen like this:
- At key_acquire, a reference to an SP (and an SA) is held
- key_sendup_mbuf will try to take key_so_mtx
- Some other thread may try to localcount_drain to the SP with
  holding key_so_mtx in say key_api_spdflush
- In this case localcount_drain never return because key_sendup_mbuf
  that has stuck on key_so_mtx never release a reference to the SP

Fix the deadlock by deferring key_sendup_mbuf to the timer
(key_timehandler).
2017-08-09 04:29:36 +00:00
2017-08-05 11:33:05 +00:00
2017-08-06 08:11:38 +00:00
2017-08-01 20:07:37 +00:00
2017-08-06 08:00:40 +00:00
2017-08-08 02:27:03 +00:00
2017-08-01 20:07:37 +00:00
2017-08-04 07:27:08 +00:00
Description
No description provided
3.1 GiB
Languages
C 85.3%
Roff 7.2%
Assembly 3.1%
Shell 1.7%
Makefile 1.2%
Other 0.9%