From nobody Mon Sep 28 21:05:36 2026 Received: from out203-205-221-245.mail.qq.com (out203-205-221-245.mail.qq.com [203.205.221.245]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5C27C41B8EE for ; Mon, 17 Aug 2026 12:38:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=203.205.221.245 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786970289; cv=none; b=axrWy1LU+/srZ7RYUm+LUJBWyNTAH1LhXWy+Rwji1Tk+N1LLVGo2X3ieAvA49MPJ1IzrudrWWSEAcdtc68VqgvMf5ZPqaPk0dJ9+wNPVnok0X2Oz4M9pYVtk96yjEQICAfr1kcNIcVmOcyzD8tIjaSeWQIbvDqH5RT6GinLOqno= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786970289; c=relaxed/simple; bh=utyIJsmfsiDmX4utiS7rw7xEtOPGmfFrwMqoaWxS3bM=; h=Message-ID:From:To:Cc:Subject:Date:In-Reply-To:References: MIME-Version; b=lcZTTz81HbB+cl0/+oUMW/k8zPE34kPfYqir8eSMiOqNOC+Yk9/unzH7Kn3upgc4maY2a8HOyOqKgZcqZNc6SWL61JrwBXnskxSN1v4PkDVg5Ho3baYt4WHrnJSEscyVNMA/NdYzFgXnj2ou6nCaRkvuwH4HcZ0PbZYyK7lw9ks= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com; spf=pass smtp.mailfrom=qq.com; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b=xkflg6BZ; arc=none smtp.client-ip=203.205.221.245 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=qq.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b="xkflg6BZ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1786970274; bh=qkhm4uDqTcn61rxXD17rLcN6hVGKjX3nV8ymNLxK7UU=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=xkflg6BZfkLRM7abykfhZpXat/ci2sXWtUpJkVMZ4khdjlvOTB/E9PRQph74R/NSk u9qBG9Z/QQPb4dWFfPk9TCc5l8VHl5CyA/eGLGV8Ivk7ay0j79O6aJJrCDHNikijMY VF/KC/c2Ne3gRz6IXB92AVzC4bnBUMEOY25zwsiM= Received: from lxu-ped-host.. ([111.198.231.89]) by newxmesmtplogicsvrsza53-0.qq.com (NewEsmtp) with SMTP id 9732E29F; Mon, 17 Aug 2026 20:37:51 +0800 X-QQ-mid: xmsmtpt1786970271t6v8z49n9 Message-ID: X-QQ-XMAILINFO: MSPab3JKqisNXcta34i6a2/T2XWDsBD1fF8aY6I/yqQhKf4ixVHwZrHwdOz3JU vaorDWsjNuBDXYm7eniiNvdX/X5vhvYX8WcRihqR2iNSOZBJLJ3YxjcWlY1Mx8M7PK85CeJ7Dw3N M77txHpGuvo8yRh8tLwJ4srb8zImbYjBfr48IZYduEZVpltm495E4Lsv7MVtYK5WSOsvaR2is6Fo XOjWcpyYrLf4+V78bITN1NCc8O37+daTmErx2vRake4q5gnpdrbtTs+Q3mp0ztdTF95QUCSfM8Y1 qHSmA9l9fkdNSFVNH3wk/isKljZX3nca0DMFv1g0LtaE5pI7+AYPH5uG2DLziyeo2sHtHxEo0yKj nu8J9eT0eJGMvDDYb+WGtAL56Nr/FPxDwREVaNsALe7/4RY/f1q4N+cjwepXHIvSCjTDlqscnQjO q+68JGfwMQOpx0Gcc0JQZg12I1tZd5+iLw9eoj6KobGe00ZJ+c18RKBCZWc1xhzMGIfaiHeQyZPX Xw8BBJ+A3dFVA+hdgZFsrswpYNAkch5v8Z+cI9G5RBfQEAoBZMxkXg5C+Eu9KKr82Y84ClS2T8k2 F9WW1M/GSVqytsJ81HwYx8HT3vmfb0I+8jeXvwlB3LC0wvBGDFldQsGUVsy84ERbJaTWfoRHe9iu x+q+m0dL3Rqrx3gb+hBu10AT7CT/ZFW3sdOCdDzQovkpfGQXxE+bf1vB3qSmjLvuUegsLzQZjllb Vp1ZJJ0/JRe1HLqB7KxKfvuzmiZ1N4gwM3Qo5RLvif82HQ59B/weoXh6EdKL5IMuf9KNBda9Gp4q xVUvGE9x1m9gYSv2p3w3S0dOUvgk6aakDFCh03P7F4z+chf4GYzm4v4rdfxyYDCCB77Ir1DXMVTG 5O1akft+YUapCN8XhnAFrrGuslAjf3auBeajtr1gqPJ3tXgWYD5FFg4XhZw9r86RzQysbv5NwVaW HpmgKEDwqbOjGOsupzKMaPibqc69lxrE+RY883ECytlTndo/T7gUlFEMLXWPJ2+BMapPU79GW+vC PJpDosgK5wGBHsLwEz6R/loFVsBbUYg3pia4pq5w== X-QQ-XMRINFO: NyFYKkN4Ny6FuXrnB5Ye7Aabb3ujjtK+gg== From: Edward Adam Davis To: syzbot+1944765c3659f63d3777@syzkaller.appspotmail.com Cc: airlied@gmail.com, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, rubenru09@aol.com, simona@ffwll.ch, syzkaller-bugs@googlegroups.com, tzimmermann@suse.de Subject: [PATCH] drm: Optimized by adding the TV modes attribute Date: Mon, 17 Aug 2026 20:37:51 +0800 X-OQ-MSGID: <20260817123750.364706-2-eadavis@qq.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <6a829a95.dbb3a75c.20434b.0043.GAE@google.com> References: <6a829a95.dbb3a75c.20434b.0043.GAE@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" When adding gud properties for drm connector within the function gud_connector_add_properties(), if the TV modes property is not added first, drm_mode_create_tv_properties_legacy() would fail to add the TV modes property because the tv_select_subconnector_property has already been added. This causes gud_connector_property_lookup() to fail when looking for the TV modes property (returning NULL), which subsequently triggers issue [1] when a NULL property is passed to drm_object_attach_property(). The fix ensures that within drm_mode_create_tv_properties_legacy(), the TV modes property is correctly added regardless of whether the subconnector property exists. [1] Oops: general protection fault, probably for non-canonical address 0xdffffc= 000000000c: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000060-0x0000000000000067] RIP: 0010:drm_object_attach_property+0x85/0x3b0 drivers/gpu/drm/drm_mode_ob= ject.c:240 Call Trace: gud_connector_add_properties drivers/gpu/drm/gud/gud_connector.c:572 [inli= ne] gud_connector_create drivers/gpu/drm/gud/gud_connector.c:680 [inline] gud_get_connectors+0x86e/0x1700 drivers/gpu/drm/gud/gud_connector.c:717 gud_probe+0x17aa/0x1c20 drivers/gpu/drm/gud/gud_drv.c:635 =20 Fixes: f453ba046074 ("DRM: add mode setting support") Reported-by: syzbot+1944765c3659f63d3777@syzkaller.appspotmail.com Closes: https://syzkaller.appspot.com/bug?extid=3D1944765c3659f63d3777 Tested-by: syzbot+1944765c3659f63d3777@syzkaller.appspotmail.com Signed-off-by: Edward Adam Davis Acked-by: Ruben Wauters --- drivers/gpu/drm/drm_connector.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connecto= r.c index 11646453aaac..ecbbc967f51f 100644 --- a/drivers/gpu/drm/drm_connector.c +++ b/drivers/gpu/drm/drm_connector.c @@ -2175,8 +2175,12 @@ int drm_mode_create_tv_properties_legacy(struct drm_= device *dev, struct drm_property *tv_subconnector; unsigned int i; =20 - if (dev->mode_config.tv_select_subconnector_property) + if (dev->mode_config.tv_select_subconnector_property) { + if (num_modes && !dev->mode_config.legacy_tv_mode_property) + goto other; + return 0; + } =20 /* * Basic connector properties @@ -2199,6 +2203,7 @@ int drm_mode_create_tv_properties_legacy(struct drm_d= evice *dev, goto nomem; dev->mode_config.tv_subconnector_property =3D tv_subconnector; =20 +other: /* * Other, TV specific properties: margins & TV modes. */ --=20 2.43.0