On Fri, Jun 26, 2020 at 09:12:16PM +0200, Martin Pieuchot wrote: > On 26/06/20(Fri) 16:56, Vitaliy Makkoveev wrote: > > if_clone_create() has the races caused by context switch. > > Can you share a backtrace of such race? Where does the kernel panic? >
This diff was inspired by thread [1]. As I explained [2] here is 3 issues that cause panics produced by command below: ---- cut begin ---- for i in 1 2 3; do while true; do ifconfig bridge0 create& \ ifconfig bridge0 destroy& done& done ---- cut end ---- My system was stable with the last diff I did for thread [1]. But since this final diff [3] which include fixes for tun(4) is quick and dirty and not for commit I decided to make the diff to fix the races caused by if_clone_create() at first. I included screenshot with panic. Also the code to reproduce below: ---- cut begin ---- #!/bin/sh while true; do ifconfig bridge0 create& done& while true; do ifconfig bridge0 destroy done ---- cut end ---- 1. https://marc.info/?t=159289590100001&r=1&w=2 2. https://marc.info/?l=openbsd-tech&m=159307900124245&w=2 3. https://marc.info/?l=openbsd-tech&m=159308633126243&w=2