On Sat, Dec 08, 2018 at 09:25:44PM -0800, David Miller wrote: > From: Stefan Hajnoczi <stefanha@xxxxxxxxxx> > Date: Thu, 6 Dec 2018 19:14:34 +0000 > > > If a local process has closed a connected socket and hasn't received a > > RST packet yet, then the socket remains in the table until a timeout > > expires. > > > > When a vhost_vsock instance is released with the timeout still pending, > > the socket is never freed because vhost_vsock has already set the > > SOCK_DONE flag. > > > > Check if the close timer is pending and let it close the socket. This > > prevents the race which can leak sockets. > > > > Reported-by: Maximilian Riemensberger <riemensberger@xxxxxxxxxx> > > Cc: Graham Whaley <graham.whaley@xxxxxxxxx> > > Signed-off-by: Stefan Hajnoczi <stefanha@xxxxxxxxxx> > > Michael please review, and let me know if you want me to apply this > directly and queue it up for -stable. I sent this to Linus already.