On Sat, Jul 15, 2023 at 12:53:45PM -0400, Dave Voutila wrote: > > Solène Rapenne <sol...@perso.pw> writes: > > > On Fri, 2023-06-09 at 11:25 -0400, Dave Voutila wrote: > >> > >> Thanks. This feels like bad fd accounting during the fork/exec dance. > >> > >> Sounds like the switch definition and usage isn't required for > >> reproducing? > > > > indeed, you don't need it, a local interface is enough > > Can you try this diff? I think I found the issue. In short, a file > descriptor for one of the devices was being closed, that descriptor was > recycled when creating a socketpair, and then being closed again because > of the loop over ther other device fds. > > Nice part about this possible fix is it's a net-negative diff. > > Sorry it took a month+ to find time to look a this.
Thanks, this works for me. Fix makes sense. Please also garbage collect j and d in this function, then it's ok tb