CVE-2026-90314 PUBLISHED

remoteproc: fix OOB read via signed offset in rsc_table_for_each_entry()

Assigner: Linux
Reserved: 11.09.2026 Published: 17.09.2026 Updated: 17.09.2026

In the Linux kernel, the following vulnerability has been resolved:

remoteproc: fix OOB read via signed offset in rsc_table_for_each_entry()

table->offset[i] is a u32 from firmware, but was stored into a signed int. A crafted offset like 0xFFFFFFF0 becomes -16, placing hdr 16 bytes before the table buffer. The subsequent avail check was bypassed because the negative int was promoted to a large size_t in the expression "table_sz - offset - sizeof(*hdr)", yielding a large positive avail and letting the out-of-bounds hdr->type read proceed undetected.

Store the offset as u32 and validate it with unsigned comparisons before any pointer arithmetic.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to 0d385be8f199b349f325cf90584b47b6a044ea79 (excl.)
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to cc85e0d3d3333fd5fd2d50c9a4578d209d7f2564 (excl.)
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to 6a01ad25aa4f3a02153cf1d112cb9b65865cd5d8 (excl.)
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to c82241a9454b2d30d53b50884f94b7972ba44a5e (excl.)
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to bc4940793aaa16a9cf90063b11d6926f8014a1b7 (excl.)
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to 6fd220604f06c746760183df74b07384c3fdd660 (excl.)
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to 6282d47b24b0c98d08d02807d676a7f67b4c052e (excl.)
  • affected from fd2c15ec1dd3c2fdfc6ff03bb9644da9d530e3b9 to bb840ea69347aff7bde5a208e7b5b180669a7656 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 3.4 is affected
  • unaffected from 0 to 3.4 (excl.)
  • unaffected from 5.10.270 to 5.10.* (incl.)
  • unaffected from 5.15.221 to 5.15.* (incl.)
  • unaffected from 6.1.188 to 6.1.* (incl.)
  • unaffected from 6.6.157 to 6.6.* (incl.)
  • unaffected from 6.12.110 to 6.12.* (incl.)
  • unaffected from 6.18.52 to 6.18.* (incl.)
  • unaffected from 7.2.6 to 7.2.* (incl.)
  • unaffected from 7.3-rc1 to * (incl.)

References