From nobody Mon Oct 16 07:17:41 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S87jd56TGz4x1h8; Mon, 16 Oct 2023 07:17:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S87jd4bb4z4W25; Mon, 16 Oct 2023 07:17:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697440661; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LFz7YOVrtxiZtrRnHEyfj0/51CJJUm3ohMZw21capRY=; b=obkHlIEmPhBvmvis5L1k54e0uUaEIG6qenVmFHtQyvj1OWeO48fQg63+MBY7u2iFWN4zN+ ume+zKpTY4dOOOWmFsVMUMM/jtFra8YtuZpRpdDFm45/MVZZydARmmv2UW2Jl82bGsB7fa KAWgGMEUjBreOTuFHdNH6g+nOo0yjB+X6r4S7yr4EusXQhATAJgnJpcRuxpaYCTMr52NzF vHr1tD1nH4uxpCPlJiTKLiIFmBoyyPgLCW9kcjMfHwqsV9gqYV75LmuklQQm8em/kPfeLW oe4cWgiVWM9biy2WdWO3U9DqQCRPnNA20SVLy3PlKZSy0F838V+I3p0j1uLadg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697440661; a=rsa-sha256; cv=none; b=MUJkdqGuv7cHD6L/RGLjVCLN37zgK0CbE3RTiDkgg++jGLNdYc3iRzohBEagoRUHUSNXZS pgtCNzPtnYwaFidIqWLvVEUdV1wpuYex442XNH25ltd3/AVhd7aYNUcNafCyHQXHN0YFQK eR5p5TNIfWppfjy5ig7ANsE/idIFxV4KB2AQBWc3mY4GWmIQBpn9NQidfteUO95+n+ivgt esOunxZSV4EgujePZKrrIUArKiUuZtZJ72rpQ7+rXa/pNDgIoeU0tnv91TRDzDeWeYmHbA ROykLer+2BP1ta/MtVaM7SlnW7/9s203Hz3imvf5ekCOoWcqdkYriPf8UmdjkQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697440661; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LFz7YOVrtxiZtrRnHEyfj0/51CJJUm3ohMZw21capRY=; b=ANUBOZ1dDTMm9vtm7fetinxjDfD6JfgLAKbKskar28LzPcQPGWEE25qofQ9+ukM59cuGtk 0+GPMIUp8reF5ZOwWiudS2uW32sN+5cDrBdmu44/5A1d9k8IfwoEkkxTW9T1TyerF9DD8m MddViryapny7PkiZpDq/az3exO+XgVehvGV/d57mmCl1RfQpkSOH1KUNTXiT0wfJ5Hl6C/ 8YrWWtLNl0Neb0hiZS0kqHPJDtp+pPZUWPNkOBu42iK0mZUWIsBZe6hP6fb2P/IJnShp/G 5EHYAFISrcLYZRbABGnnZtbOQggMNfOSXcxNNQ2NNYO8w/M3O/Ut4cU+4Dfwvw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4S87jd3g9TzX2m; Mon, 16 Oct 2023 07:17:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39G7HftE055111; Mon, 16 Oct 2023 07:17:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39G7HfUZ055108; Mon, 16 Oct 2023 07:17:41 GMT (envelope-from git) Date: Mon, 16 Oct 2023 07:17:41 GMT Message-Id: <202310160717.39G7HfUZ055108@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: e900c81ede85 - stable/13 - tun/tap: correct ref count on cloned cdevs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e900c81ede851f52ab50b541b9a6ef5fbc9bb919 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e900c81ede851f52ab50b541b9a6ef5fbc9bb919 commit e900c81ede851f52ab50b541b9a6ef5fbc9bb919 Author: Konstantin Belousov AuthorDate: 2023-09-21 10:47:14 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-16 07:17:23 +0000 tun/tap: correct ref count on cloned cdevs PR: 273418 (cherry picked from commit 27f1ec0be24b45559793e486a4fa5a2e7fdadc17) --- sys/net/if_tuntap.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/net/if_tuntap.c b/sys/net/if_tuntap.c index b81c2149a62f..756aa04482cb 100644 --- a/sys/net/if_tuntap.c +++ b/sys/net/if_tuntap.c @@ -541,6 +541,8 @@ tun_clone_create(struct if_clone *ifc, char *name, size_t len, caddr_t params) /* find any existing device, or allocate new unit number */ dev = NULL; i = clone_create(&drv->clones, &drv->cdevsw, &unit, &dev, 0); + if (i == 0) + dev_ref(dev); /* No preexisting struct cdev *, create one */ if (i != 0) i = tun_create_device(drv, unit, NULL, &dev, name); @@ -596,6 +598,8 @@ tunclone(void *arg, struct ucred *cred, char *name, int namelen, /* find any existing device, or allocate new unit number */ i = clone_create(&drv->clones, &drv->cdevsw, &u, dev, 0); + if (i == 0) + dev_ref(*dev); if (i) { if (append_unit) { namelen = snprintf(devname, sizeof(devname), "%s%d",