From nobody Thu Jun 23 17:20:51 2022 X-Original-To: dev-commits-src-main@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 9693986D150; Thu, 23 Jun 2022 17:20:51 +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 4LTRq73tLbz3DVr; Thu, 23 Jun 2022 17:20:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656004851; 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=un3XUyq9AUR+jmhOAIOc24fJNuDMg3/2lEr5Zqp9WRg=; b=epZ/KzdMgGXc7RR+pqyqBMmBq89qjvwySSIOnkt414F0U1CmN3tqg+kkUcAj0JnFp96YhV S46a0z+BDhImsivoS3RSi7YTYM7aKj2wOi6G1R/qYm2Ue5ojutiB2/sTYCyiqaJpIpEDnz zi7JPUPK05EAyt0B8VmmRMy8S6wGpShHdA88f3IZ1JnfckUB/eaDIDifAwy4caDsCu4yFb 2LpobWCYZQrDSUHJ7nDMC4/wi4dNmoj3pCnJ2D9aqa0EPnwgKW4AsEZ+hN28dXlVkth8uj ODGGz9VIJii2vfUFI1VxpnTm21HJxf2afeXt7i+oez0hNZQlcVCUt93oVVRldg== 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 650A91F4C6; Thu, 23 Jun 2022 17:20:51 +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 25NHKp1A041753; Thu, 23 Jun 2022 17:20:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 25NHKplC041751; Thu, 23 Jun 2022 17:20:51 GMT (envelope-from git) Date: Thu, 23 Jun 2022 17:20:51 GMT Message-Id: <202206231720.25NHKplC041751@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alan Somers Subject: git: 5f438dd3acba - main - ses: don't panic if disk elements have really weird descriptors List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@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/main X-Git-Reftype: branch X-Git-Commit: 5f438dd3acba47e54e63b13bfff31a49bcc6ddea Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656004851; 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=un3XUyq9AUR+jmhOAIOc24fJNuDMg3/2lEr5Zqp9WRg=; b=FLNRtH5Tad4h8VzqG9wSsp4jvpJeqxyeLAMbzFrmIDykKwoQlcOWII06NMiZMWOPKa1OOJ w00rPfdTWYQt3sMjXuWeacXJI2db/GWZtfGOdNbjXeo7wjNwZUu4HdDtmDClLqK4EBHS18 l8Putknv71E5MbMsLVfIopZ8nDX/96YZErVnmA2Q4KXNsXDIGQcQWvQeklOwHnsE3X9zoq m3tA39vbv8yl9L1QlUKEENg/fibICXBlq/Twbn1GI82NaaebnTVOEK8QIOKRWezCTzTLHx H8/pjS0MPcJ0Wi2Xo2sCdyvLyykZZX5RTawldlT4zZF8lO6Y5IQyhFITRDD9vA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1656004851; a=rsa-sha256; cv=none; b=NG/6q4Az6R79IlmDOsNqhF9sMcVxfDSnTRPZXZ5KKHRjqEWQ4sdXkEZVIxAr2u35VmaEod JQ5fPMVzW+6cSdd6NTKoBi/hgkjvEXz94l8xbehcDw83LwWnunT7GJ1iz/ytOVo7vvrxLH GD+pgjBNUETXT1et8e1sG2AygT++UekK1GdD+2PfVKTwkOff0xAI34YeiumeTbSIGunx/k Nbb0yKQ0zMRqNvl8x10yHg9gQLP+aH6Uim53SXqjC7PwHC9drNmRdwnHQrc5A3SGi96EfO hXTLvAwFc/qp89dJZzQQ2IaDOMaW1QnACZBNbnbk7HhZ3smF20ZysoGq0gkJ1g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by asomers: URL: https://cgit.FreeBSD.org/src/commit/?id=5f438dd3acba47e54e63b13bfff31a49bcc6ddea commit 5f438dd3acba47e54e63b13bfff31a49bcc6ddea Author: Alan Somers AuthorDate: 2022-06-10 22:44:59 +0000 Commit: Alan Somers CommitDate: 2022-06-23 17:19:20 +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 MFC after: 2 weeks --- 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 e74e19acc409..7f66ca458bd7 100644 --- a/sys/cam/scsi/scsi_pass.c +++ b/sys/cam/scsi/scsi_pass.c @@ -457,8 +457,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 ad382b357f2f..a9a1c927449f 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;