{"id":"CVE-2023-53991","state":"PUBLISHED","title":"drm/msm/dpu: Disallow unallocated resources to be returned","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/msm/dpu: Disallow unallocated resources to be returned\n\nIn the event that the topology requests resources that have not been\ncreated by the system (because they are typically not represented in\ndpu_mdss_cfg ^1), the resource(s) in global_state (in this case DSC\nblocks, until their allocation/assignment is being sanity-checked in\n\"drm/msm/dpu: Reject topologies for which no DSC blocks are available\")\nremain NULL but will still be returned out of\ndpu_rm_get_assigned_resources, where the caller expects to get an array\ncontaining num_blks valid pointers (but instead gets these NULLs).\n\nTo prevent this from happening, where null-pointer dereferences\ntypically result in a hard-to-debug platform lockup, num_blks shouldn't\nincrease past NULL blocks and will print an error and break instead.\nAfter all, max_blks represents the static size of the maximum number of\nblocks whereas the actual amount varies per platform.\n\n^1: which can happen after a git rebase ended up moving additions to\n_dpu_cfg to a different struct which has the same patch context.\n\nPatchwork: https://patchwork.freedesktop.org/patch/517636/","publishedAt":"2025-12-24T10:55:29.833Z","updatedAt":"2026-05-11T19:53:10.724Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"8dbd54d679e3ab37be43bc1ed9f463dbf83a2259","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"bf661c5e3bc48973acb363c76e3db965d9ed26d0","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"9e1e236acdc42b5c43ec8d7f03a39537e70cc309","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"9fe3644c720ac87d150f0bba5a4ae86cae55afaf","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"abc40122d9a69f56c04efb5a7485795f5ac799d1","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.7","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.7","versionType":"semver"},{"version":"5.10.173","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.99","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.16","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.2.3","status":"unaffected","lessThanOrEqual":"6.2.*","versionType":"semver"},{"version":"6.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c"]}],"references":["https://git.kernel.org/stable/c/8dbd54d679e3ab37be43bc1ed9f463dbf83a2259","https://git.kernel.org/stable/c/bf661c5e3bc48973acb363c76e3db965d9ed26d0","https://git.kernel.org/stable/c/9e1e236acdc42b5c43ec8d7f03a39537e70cc309","https://git.kernel.org/stable/c/9fe3644c720ac87d150f0bba5a4ae86cae55afaf","https://git.kernel.org/stable/c/abc40122d9a69f56c04efb5a7485795f5ac799d1"],"weaknesses":[],"ingestedAt":"2026-10-29T20:06:33.064Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2023/53xxx/CVE-2023-53991.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2023-53991","state":"PUBLISHED","datePublished":"2025-12-24T10:55:29.833Z","dateUpdated":"2026-05-11T19:53:10.724Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-12-24T10:53:46.176Z"},"containers":{"cna":{"title":"drm/msm/dpu: Disallow unallocated resources to be returned","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/msm/dpu: Disallow unallocated resources to be returned\n\nIn the event that the topology requests resources that have not been\ncreated by the system (because they are typically not represented in\ndpu_mdss_cfg ^1), the resource(s) in global_state (in this case DSC\nblocks, until their allocation/assignment is being sanity-checked in\n\"drm/msm/dpu: Reject topologies for which no DSC blocks are available\")\nremain NULL but will still be returned out of\ndpu_rm_get_assigned_resources, where the caller expects to get an array\ncontaining num_blks valid pointers (but instead gets these NULLs).\n\nTo prevent this from happening, where null-pointer dereferences\ntypically result in a hard-to-debug platform lockup, num_blks shouldn't\nincrease past NULL blocks and will print an error and break instead.\nAfter all, max_blks represents the static size of the maximum number of\nblocks whereas the actual amount varies per platform.\n\n^1: which can happen after a git rebase ended up moving additions to\n_dpu_cfg to a different struct which has the same patch context.\n\nPatchwork: https://patchwork.freedesktop.org/patch/517636/"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"8dbd54d679e3ab37be43bc1ed9f463dbf83a2259","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"bf661c5e3bc48973acb363c76e3db965d9ed26d0","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"9e1e236acdc42b5c43ec8d7f03a39537e70cc309","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"9fe3644c720ac87d150f0bba5a4ae86cae55afaf","versionType":"git"},{"version":"bb00a452d6f77391441ef7df48f7115dd459cd2f","status":"affected","lessThan":"abc40122d9a69f56c04efb5a7485795f5ac799d1","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.7","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.7","versionType":"semver"},{"version":"5.10.173","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.99","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.16","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.2.3","status":"unaffected","lessThanOrEqual":"6.2.*","versionType":"semver"},{"version":"6.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/8dbd54d679e3ab37be43bc1ed9f463dbf83a2259"},{"url":"https://git.kernel.org/stable/c/bf661c5e3bc48973acb363c76e3db965d9ed26d0"},{"url":"https://git.kernel.org/stable/c/9e1e236acdc42b5c43ec8d7f03a39537e70cc309"},{"url":"https://git.kernel.org/stable/c/9fe3644c720ac87d150f0bba5a4ae86cae55afaf"},{"url":"https://git.kernel.org/stable/c/abc40122d9a69f56c04efb5a7485795f5ac799d1"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-11T19:53:10.724Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.10.173"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"5.15.99"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"6.1.16"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"6.2.3"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.7","versionEndExcluding":"6.3"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}