From nobody Mon Feb 9 01:17:18 2026 Received: from out203-205-221-205.mail.qq.com (out203-205-221-205.mail.qq.com [203.205.221.205]) (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 B19873321B0 for ; Mon, 5 Jan 2026 15:42:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=203.205.221.205 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767627742; cv=none; b=dM2aQF76mGOeGsP6o26KvVPgyPEgGo58X9jBenEZG62r96RIfRluawJuVW7/KNw5NJl1zSftlNbfLbO/2KvGeT7fB4lXr0FTXUeV+PdEmXI7QD6XEIWeIzL3IIt3eP4w/+c3VmZQSir18SFWysCfAlvcurGXZq7q4kpfy0Rntwc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767627742; c=relaxed/simple; bh=kPQ79kNPu8uel8NnpZPAYYzfwgSlCAHe6VA1gYjNTJg=; h=Message-ID:From:To:Cc:Subject:Date:In-Reply-To:References: MIME-Version; b=mziN860Y3mo3ewMO4G73T+1Ue4eidZZmskqsRq25JIJw5MGpcQcHQvnp0O6adWTDcFHmPPdCkcJ4AHPnKUPC6K3aQ6v4gU3qOc0JmxeN2WaEQ6nRMFpC+wbYimOuzfZxckIKf2YhB4+2Mdlk47fLnR6NWlFqp6UfSbys5tKery0= 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=ZHfJOdsk; arc=none smtp.client-ip=203.205.221.205 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="ZHfJOdsk" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1767627729; bh=YO+VnHMZ7XqygvjbowzYR0/1fxdZiUSZO6dZBsYDf38=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=ZHfJOdskFugP0olSI7mQNLu01CH103cNiqZFb4iw8gI+LSXU3MiYhTpQytJDe6mNZ 19CPGoPWBV6/hY6NSGD6AZxGwSRerJcaHAsN7EDRfj4KiA3TLNZQ7OAvEcUXhl+N47 5BRnhOfZzTHjUGfpAYJ8hjjlsDCPFXcGq6TpETqY= Received: from kali ([111.19.95.200]) by newxmesmtplogicsvrszc41-0.qq.com (NewEsmtp) with SMTP id A2A84EF4; Mon, 05 Jan 2026 23:40:42 +0800 X-QQ-mid: xmsmtpt1767627642tj6w9zihd Message-ID: X-QQ-XMAILINFO: Nx5J06Esz7r7iWxsSJakIrwmX6l3kZZEwaoasDdajtnkeRRvSKpuDoQXmXvhF7 Efj8mLzQBC2K+D/iRaJre01wyl4HilyS7xb8cEIo5CWCXVI9Gc66TtW19Tiw1ZBIH+CKkr7PF6jH Ky8+H6opyN0C8wYcE0ZJpC75K6JqraHhmTaeoBtYoLJ1y1kh8K4wYbZp4rZf+qc+t+kFpOH0fSNe JVbSaaZ1sfm7JWV6YoBFZTPrJDZCSwzZuPV+g7601mWbRXygvSCIee14VwrFvj2uidzb+L2GqENu SxvCfr/Upr8zHU1GMFipZchkaoOTKVO8BjIyBTtWa6qYFowPO++O1j4Nj9kqzUMxZmscMj07zWtV 03jFOpFp+Xk3seIL7jCi92U1Jq2AhPtLKLXf3hVXVDNlLmQjan+DMMfLF0hpYUx+2i9VODrnaHYP s+ybKv9NiU22rF75L4/DHXdTAeIg1D0cu2RJKZaBLjfmH14PuaKR5Y2DvzdY50GJmqvGrdZWxryE +uT8zC6xKadlnb+f2QAXsLZ+gdRTnUwuGoFilO493sblJryxAYZAfC3yCi2jtbk8uv8qIT/Rf87K RfXCrqJmz77tml8trvFIJLt9C6ruSHQuVw8BUy54qtASvPcbMfs24RbhHuNKcyq2tVKSE7WZ5TzZ jieOscuAKVuqi+abQQXfgOjvbS/pjX4tElgqq8RKxLB77qbJl+YYHptiMSegYuickKXW/c/pwFOb lfbjUXJt/zszUJkU5GFigeVmND6NLDdLKnhOLdi/PX+gxST7oq6VdWdC237bP+AVaINYSzda2p3M xQ+ReUXyxozDNOBAujsDwAwSbQIPAv1TehrjEqTPpLGGgbLGTYV6kM59F5ihuwNo26G3mfgW8ypA Nc1B+lfggER/I9WgG1W9gIaPi26vT0feU2dyvTR1OMTiGl5AfVUIDsAlf6fut1/nSW6HM/kh9IOr PH68VQvcQUMubcbd1UgJedgMwJlefaM/8G8GrbbX++QuJIokMxS5+K4LJnh/VFacC6K8qrL6Ia7m C69fK6dfuTFSU6DcpIHLNGyCJ/1la3ygXQBAF8bQ== X-QQ-XMRINFO: OD9hHCdaPRBwH5bRRRw8tsiH4UAatJqXfg== From: Xiao Kan <814091656@qq.com> To: maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: w@1wt.eu, security@kernel.org, kanxiao666@gmail.com, xiao.kan@samsung.com, Xiao Kan <814091656@qq.com> Subject: [PATCH v2] drm: Account property blob allocations to memcg Date: Mon, 5 Jan 2026 10:40:20 -0500 X-OQ-MSGID: <20260105154020.32717-1-814091656@qq.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260105-abiding-aloof-locust-dcadac@houat> References: <20260105-abiding-aloof-locust-dcadac@houat> 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" DRM_IOCTL_MODE_CREATEPROPBLOB allows userspace to allocate arbitrary-sized property blobs backed by kernel memory. Currently, the blob data allocation is not accounted to the allocating process's memory cgroup, allowing unprivileged users to trigger unbounded kernel memory consumption and potentially cause system-wide OOM. Mark the property blob data allocation with GFP_ACCOUNT so that the memory is properly charged to the caller's memcg. This ensures existing cgroup memory limits apply and prevents uncontrolled kernel memory growth without introducing additional policy or per-file limits. Changes since v1: - Drop the per-drm_file blob count limit. - Account blob data allocations to memcg via GFP_ACCOUNT instead. Signed-off-by: Xiao Kan <814091656@qq.com> Signed-off-by: Xiao Kan --- drivers/gpu/drm/drm_property.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/drm_property.c b/drivers/gpu/drm/drm_property.c index 596272149..c5c91b88f 100755 --- a/drivers/gpu/drm/drm_property.c +++ b/drivers/gpu/drm/drm_property.c @@ -562,7 +562,7 @@ drm_property_create_blob(struct drm_device *dev, size_t= length, if (!length || length > INT_MAX - sizeof(struct drm_property_blob)) return ERR_PTR(-EINVAL); =20 - blob =3D kvzalloc(sizeof(struct drm_property_blob)+length, GFP_KERNEL); + blob =3D kvzalloc(sizeof(struct drm_property_blob)+length, GFP_KERNEL | G= FP_ACCOUNT); if (!blob) return ERR_PTR(-ENOMEM); =20 --=20 2.51.0