CVE-2026-46263
published 2026-06-03CVE-2026-46263: In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Fix out-of-bounds stream encoder index v3 eng_id can be negative and that…
PriorityP340high7.8CVSS 3.1
AVLACLPRLUINSUCHIHAH
EPSS
0.12%
2.2th percentile
In the Linux kernel, the following vulnerability has been resolved:
drm/amd/display: Fix out-of-bounds stream encoder index v3
eng_id can be negative and that stream_enc_regs[]
can be indexed out of bounds.
eng_id is used directly as an index into stream_enc_regs[], which has
only 5 entries. When eng_id is 5 (ENGINE_ID_DIGF) or negative, this can
access memory past the end of the array.
Add a bounds check using ARRAY_SIZE() before using eng_id as an index.
The unsigned cast also rejects negative values.
This avoids out-of-bounds access.
Fixes the below smatch error:
dcn*_resource.c: stream_encoder_create() may index
stream_enc_regs[eng_id] out of bounds (size 5).
drivers/gpu/drm/amd/amdgpu/../display/dc/resource/dcn351/dcn351_resource.c
1246 static struct stream_encoder *dcn35_stream_encoder_create(
1247 enum engine_id eng_id,
1248 struct dc_context *ctx)
1249 {
...
1255
1256 /* Mapping of VPG, AFMT, DME register blocks to DIO block instance */
1257 if (eng_id dc_bios,
1283 eng_id, vpg, afmt,
--> 1284 &stream_enc_regs[eng_id],
^^^^^^^^^^^^^^^^^^^^^^^ This stream_enc_regs[] array has 5 elements so we are one element beyond the end of the array.
...
1287 return &enc1->base;
1288 }
v2: use explicit bounds check as suggested by Roman/Dan; avoid unsigned int cast
v3: The compiler already knows how to compare the two values, so the
cast (int) is not needed. (Roman)
Affected
8 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| linux | linux | — | — |
| linux | linux | >= 2728e9c7c84235d2d7bc1403174d071ffc82d6d2 < 29f3824b08a98d41ecbbfd33580630d7607f962e | 29f3824b08a98d41ecbbfd33580630d7607f962e |
| linux | linux | >= 2728e9c7c84235d2d7bc1403174d071ffc82d6d2 < 263e28add4f4472cfa95150d218955d1945aa413 | 263e28add4f4472cfa95150d218955d1945aa413 |
| linux | linux | >= 2728e9c7c84235d2d7bc1403174d071ffc82d6d2 < ca3808d560ad946ab6d089fd1f5bee04b952ead4 | ca3808d560ad946ab6d089fd1f5bee04b952ead4 |
| linux | linux | >= 2728e9c7c84235d2d7bc1403174d071ffc82d6d2 < abde491143e4e12eecc41337910aace4e8d59603 | abde491143e4e12eecc41337910aace4e8d59603 |
| linux | linux_kernel | >= 6.13 < 6.18.14 | 6.18.14 |
| linux | linux_kernel | >= 6.19 < 6.19.4 | 6.19.4 |
| linux | linux_kernel | >= 6.9 < 6.12.75 | 6.12.75 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
VulDB
Linux Kernel up to 6.12.74/6.18.13/6.19.3 drm/amd/display ARRAY_SIZE out-of-bounds
vuldb·2026-06-03
CVE-2026-46263 [LOW] Linux Kernel up to 6.12.74/6.18.13/6.19.3 drm/amd/display ARRAY_SIZE out-of-bounds
A vulnerability identified as critical has been detected in Linux Kernel up to 6.12.74/6.18.13/6.19.3. This affects the function ARRAY_SIZE of the file drm/amd/display. This manipulation causes out-of-bounds read.
This vulnerability is tracked as CVE-2026-46263. The attack is only possible within the local network. No exploit exists.
You should upgrade the affected component.
GHSA
In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Fix out-of-bounds stream encoder index v3 eng_id can be negative and that stream_enc_regs[] can be indexed out of
ghsa_unreviewed·2026-06-03
CVE-2026-46263 In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Fix out-of-bounds stream encoder index v3 eng_id can be negative and that stream_enc_regs[] can be indexed out of
In the Linux kernel, the following vulnerability has been resolved:
drm/amd/display: Fix out-of-bounds stream encoder index v3
eng_id can be negative and that stream_enc_regs[]
can be indexed out of bounds.
eng_id is used directly as an index into stream_enc_regs[], which has
only 5 entries. When eng_id is 5 (ENGINE_ID_DIGF) or negative, this can
access memory past the end of the array.
Add a bounds check using ARRAY_SIZE() before using eng_id as an index.
The unsigned cast also rejects negative values.
This avoids out-of-bounds access.
Fixes the below smatch error:
dcn*_resource.c: stream_encoder_create() may index
stream_enc_regs[eng_id] out of bounds (size 5).
drivers/gpu/drm/amd/amdgpu/../display/dc/resource/dcn351/dcn351_resource.c
1246 static struct stream_encoder *dcn35_strea
Red Hat
kernel: drm/amd/display: Fix out-of-bounds stream encoder index v3
vendor_redhat·2026-06-03
CVE-2026-46263 CWE-1285 kernel: drm/amd/display: Fix out-of-bounds stream encoder index v3
kernel: drm/amd/display: Fix out-of-bounds stream encoder index v3
A flaw was found in the Linux kernel's `drm/amd/display` component. This vulnerability arises from an out-of-bounds array access when an invalid `eng_id` value is used to index the `stream_enc_regs` array. A local attacker or a privileged process could exploit this memory corruption to potentially execute arbitrary code or cause a denial of service on the affected system.
Package: kernel (Red Hat Enterprise Linux 10) - Not affected
Package: kernel (Red Hat Enterprise Linux 6) - Not affected
Package: kernel (Red Hat Enterprise Linux 7) - Not affected
Package: kernel-rt (Red Hat Enterprise Linux 7) - Not affected
Package: kernel (Red Hat Enterprise Linux 8) - Not affected
Package: kernel-rt (Red Hat Enterprise Linux 8)
No detection rules found.
No public exploits indexed.
2026-06-03
Published