{"id":"CVE-2026-90074","state":"PUBLISHED","title":"net/sched: fq_pie: clamp default quantum to avoid signed overflow","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/sched: fq_pie: clamp default quantum to avoid signed overflow\n\nfq_pie_init() sets q->quantum = psched_mtu(qdisc_dev(sch)) without\nclamping. A device with a huge MTU (e.g. dummy with max_mtu == 0\naccepting MTU 2147483634) makes psched_mtu() return 0x80000000, which\noverflows the signed flow->deficit to INT_MIN in fq_pie_qdisc_dequeue(),\ncausing an infinite loop and soft lockup. Emulate fq_pie_policy which\nis already bounded to [1, 1 << 20]; clamp the default to [256, 1 << 20].\n256 matches fq_codel's floor and is a sane minimum for a DRR quantum.\n\nConditions to recreate the bug: a device whose MTU (plus\nhard_header_len) wraps psched_mtu() into the sign bit (e.g. a dummy\ndevice with max_mtu == 0 accepting MTU 2147483634). Requires\nCAP_NET_ADMIN in a user namespace.","publishedAt":"2026-09-17T16:05:54.214Z","updatedAt":"2026-10-19T08:57:31.165Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"1f43e4dbc93b7d02761a024d5f895df823c07b72","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"f7942b2693bc24c7d609a03d06f97bee3b0bd96a","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"6f1be05faecef4c0f9a008200209f66ef2e133f7","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"435da3734a8e63d3067016accc977ed1d10aaaa0","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"44dad8fe99b58a7fe2961e9eec6a5f07ace5b51f","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"044fa2498bbc2900f0c48a6ef2fdd5b2bdfc3795","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"bf97fd2163ad1191ef8daa3d4df8372aee19e396","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"c86cd7ed0b0e44779a3d1683f03e4353baf4bdc9","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/sch_fq_pie.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.6","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.6","versionType":"semver"},{"version":"5.10.270","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.221","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.188","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.157","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.110","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.52","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.6","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/sch_fq_pie.c"]}],"references":["https://git.kernel.org/stable/c/1f43e4dbc93b7d02761a024d5f895df823c07b72","https://git.kernel.org/stable/c/f7942b2693bc24c7d609a03d06f97bee3b0bd96a","https://git.kernel.org/stable/c/6f1be05faecef4c0f9a008200209f66ef2e133f7","https://git.kernel.org/stable/c/435da3734a8e63d3067016accc977ed1d10aaaa0","https://git.kernel.org/stable/c/44dad8fe99b58a7fe2961e9eec6a5f07ace5b51f","https://git.kernel.org/stable/c/044fa2498bbc2900f0c48a6ef2fdd5b2bdfc3795","https://git.kernel.org/stable/c/bf97fd2163ad1191ef8daa3d4df8372aee19e396","https://git.kernel.org/stable/c/c86cd7ed0b0e44779a3d1683f03e4353baf4bdc9"],"weaknesses":[],"ingestedAt":"2026-10-29T20:13:34.582Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/90xxx/CVE-2026-90074.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-90074","state":"PUBLISHED","datePublished":"2026-09-17T16:05:54.214Z","dateUpdated":"2026-10-19T08:57:31.165Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-09-11T19:38:34.785Z"},"containers":{"cna":{"title":"net/sched: fq_pie: clamp default quantum to avoid signed overflow","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/sched: fq_pie: clamp default quantum to avoid signed overflow\n\nfq_pie_init() sets q->quantum = psched_mtu(qdisc_dev(sch)) without\nclamping. A device with a huge MTU (e.g. dummy with max_mtu == 0\naccepting MTU 2147483634) makes psched_mtu() return 0x80000000, which\noverflows the signed flow->deficit to INT_MIN in fq_pie_qdisc_dequeue(),\ncausing an infinite loop and soft lockup. Emulate fq_pie_policy which\nis already bounded to [1, 1 << 20]; clamp the default to [256, 1 << 20].\n256 matches fq_codel's floor and is a sane minimum for a DRR quantum.\n\nConditions to recreate the bug: a device whose MTU (plus\nhard_header_len) wraps psched_mtu() into the sign bit (e.g. a dummy\ndevice with max_mtu == 0 accepting MTU 2147483634). Requires\nCAP_NET_ADMIN in a user namespace."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"1f43e4dbc93b7d02761a024d5f895df823c07b72","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"f7942b2693bc24c7d609a03d06f97bee3b0bd96a","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"6f1be05faecef4c0f9a008200209f66ef2e133f7","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"435da3734a8e63d3067016accc977ed1d10aaaa0","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"44dad8fe99b58a7fe2961e9eec6a5f07ace5b51f","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"044fa2498bbc2900f0c48a6ef2fdd5b2bdfc3795","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"bf97fd2163ad1191ef8daa3d4df8372aee19e396","versionType":"git"},{"version":"ec97ecf1ebe485a17cd8395a5f35e6b80b57665a","status":"affected","lessThan":"c86cd7ed0b0e44779a3d1683f03e4353baf4bdc9","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/sch_fq_pie.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.6","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.6","versionType":"semver"},{"version":"5.10.270","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.221","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.188","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.157","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.110","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.52","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.6","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/sch_fq_pie.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/1f43e4dbc93b7d02761a024d5f895df823c07b72"},{"url":"https://git.kernel.org/stable/c/f7942b2693bc24c7d609a03d06f97bee3b0bd96a"},{"url":"https://git.kernel.org/stable/c/6f1be05faecef4c0f9a008200209f66ef2e133f7"},{"url":"https://git.kernel.org/stable/c/435da3734a8e63d3067016accc977ed1d10aaaa0"},{"url":"https://git.kernel.org/stable/c/44dad8fe99b58a7fe2961e9eec6a5f07ace5b51f"},{"url":"https://git.kernel.org/stable/c/044fa2498bbc2900f0c48a6ef2fdd5b2bdfc3795"},{"url":"https://git.kernel.org/stable/c/bf97fd2163ad1191ef8daa3d4df8372aee19e396"},{"url":"https://git.kernel.org/stable/c/c86cd7ed0b0e44779a3d1683f03e4353baf4bdc9"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-19T08:57:31.165Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"5.10.270"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"5.15.221"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"6.1.188"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"6.6.157"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"6.12.110"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"6.18.52"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"7.2.6"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.6","versionEndExcluding":"7.3"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}