diff --git a/usr.sbin/bhyve/gdb.c b/usr.sbin/bhyve/gdb.c --- a/usr.sbin/bhyve/gdb.c +++ b/usr.sbin/bhyve/gdb.c @@ -1821,7 +1821,7 @@ init_gdb(struct vmctx *_ctx, int sport, bool wait) { struct sockaddr_in sin; - int error, flags, s; + int error, flags, optval, s; debug("==> starting on %d, %swaiting\n", sport, wait ? "" : "not "); @@ -1837,6 +1837,9 @@ if (s < 0) err(1, "gdb socket create"); + optval = 1; + (void)setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(optval)); + sin.sin_len = sizeof(sin); sin.sin_family = AF_INET; sin.sin_addr.s_addr = htonl(INADDR_ANY);