From nobody Sun Jul 24 15:41:41 2022 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 4LrS8Q0Cz4z4Wrv4; Sun, 24 Jul 2022 15:41:42 +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 4LrS8P6tTNz487Z; Sun, 24 Jul 2022 15:41:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1658677302; 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=fNRANraPcHMQo3tUqTAncT8lr5r1PaDA/brVrGHmUmg=; b=hlpNO40eEiaiW4CNYSWL5oq9W11lodGmvKaP01n7zS+b5l7zXNlp61aJ0ItaWYVztiDvt0 IDWJAJxDkB6FLTPAZz2ZXUhHtvSWrmiJsOn5h50KQ+OHJMznnfSYrMVUNUlaTYzNBVKbzo z6rIkrwjlFlxhV5MEAWIZOs4SpBqiOyLq7TpB5OvZh1EkpsjHXceQdO+yDHvZO1s1wFAnl HR9I4t7/m+lvKxMLkmzt1OLgmrKQqybzbM28oe4kf9+SjF+SW0EMSHN8uK9br4jqxgPAHy 7H8H3+VfAGbRdkxS6MC5iKPybP1YTUsw5Cszegle8WegLoXJGjMmWe9Eq0ShkQ== 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 4LrS8P5xrFzNb0; Sun, 24 Jul 2022 15:41:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 26OFffXG020387; Sun, 24 Jul 2022 15:41:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 26OFffXM020386; Sun, 24 Jul 2022 15:41:41 GMT (envelope-from git) Date: Sun, 24 Jul 2022 15:41:41 GMT Message-Id: <202207241541.26OFffXM020386@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alan Somers Subject: git: b3c8ab9ff908 - stable/13 - ses: don't panic if disk elements have really weird descriptors 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: asomers X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b3c8ab9ff9081748277906a348aff9d331c09092 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1658677302; 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=fNRANraPcHMQo3tUqTAncT8lr5r1PaDA/brVrGHmUmg=; b=e/hwYN6yYNkhF/hHaOnNPuHfnNGzcZv77iFlw+aOXnozc6dFLADS7hCGGsIh/7IgR0u1Fh EQgI9Wg3SCgsJHrCbW7PpvNfj23+w1un4cqWNvqwAOahwWJwxQNqybrMuJN5yglf6ou0lB TynbVstLiRdYm5fVBOycyC1oAkowPF5DqV9dKkLunDhy+iYrdy9C3Y0WENBi6ieY63572J bfL2ZzAy2dqgQJGstGpWZgeCR5RiSixuxA3iLS00kq0z7p7nCALfdOF4ODwN6BZQ8OK9hS +P7TQajPg2FHJDNItVhOJMemI0tNnNoAE6ASi6SSMTacwcrhiUKSqvaEKc0ptw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1658677302; a=rsa-sha256; cv=none; b=BSgoLpPDHtKMdBy/yxbDhS/3mM22KS+KivCfx2TD93kpmAudsJV37l07k9qTUMAb0fQiV3 +M9gwUVX+hO9E9LXslbEPoIOa1tV05tUUx7cNYunZ6Nl+/pE+rHlxiIVRtIvdidVYuHZBa wGhIMMuubbjEVF/lwL0h/HZgLC4U1MTHOz1bZE9vz4B9mE9pTwCVP4IR9CX8h83tB+egOS riseg+/CQPj9UXG4acjqoHPHG5VCw+k5nR12FuxFFTUbMc5CekkzUUkjTXGZmGZESLY5iW h0WN6O0aBPcqokbP6dybeeLZIyrzLjcmvvuS9FmNTrsQafodMBhZeC451y1ZIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by asomers: URL: https://cgit.FreeBSD.org/src/commit/?id=b3c8ab9ff9081748277906a348aff9d331c09092 commit b3c8ab9ff9081748277906a348aff9d331c09092 Author: Alan Somers AuthorDate: 2022-06-10 22:44:59 +0000 Commit: Alan Somers CommitDate: 2022-07-24 15:41:18 +0000 ses: don't panic if disk elements have really weird descriptors SES allows element descriptors to contain characters like spaces and quotes that devfs does not allow to appear in device aliases. Since SES element descriptors are outside of the kernel's control, we should gracefully handle a failure to create a device physical path alias. PR: 264513 Reported by: Yuri Reviewed by: imp, mav Sponsored by: Axcient (cherry picked from commit 5f438dd3acba47e54e63b13bfff31a49bcc6ddea) --- sys/cam/scsi/scsi_pass.c | 5 +++-- sys/geom/geom_dev.c | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/sys/cam/scsi/scsi_pass.c b/sys/cam/scsi/scsi_pass.c index e9751e26d8ca..78a9ebe0a640 100644 --- a/sys/cam/scsi/scsi_pass.c +++ b/sys/cam/scsi/scsi_pass.c @@ -458,8 +458,9 @@ pass_add_physpath(void *context, int pending) "GEOM::physpath", periph->path) == 0 && strlen(physpath) != 0) { mtx_unlock(mtx); - make_dev_physpath_alias(MAKEDEV_WAITOK, &softc->alias_dev, - softc->dev, softc->alias_dev, physpath); + make_dev_physpath_alias(MAKEDEV_WAITOK | MAKEDEV_CHECKNAME, + &softc->alias_dev, softc->dev, + softc->alias_dev, physpath); mtx_lock(mtx); } diff --git a/sys/geom/geom_dev.c b/sys/geom/geom_dev.c index 574cfa9f0215..e52f8b8cccc2 100644 --- a/sys/geom/geom_dev.c +++ b/sys/geom/geom_dev.c @@ -273,8 +273,8 @@ g_dev_set_physpath(struct g_consumer *cp) dev = sc->sc_dev; old_alias_dev = sc->sc_alias; alias_devp = (struct cdev **)&sc->sc_alias; - make_dev_physpath_alias(MAKEDEV_WAITOK, alias_devp, dev, - old_alias_dev, physpath); + make_dev_physpath_alias(MAKEDEV_WAITOK | MAKEDEV_CHECKNAME, + alias_devp, dev, old_alias_dev, physpath); } else if (sc->sc_alias) { destroy_dev((struct cdev *)sc->sc_alias); sc->sc_alias = NULL;