---
id: CVE-2024-26884
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  bpf: Fix hashtab overflow check on 32-bit arches

  The hashtab code relies on roundup_pow_of_two() to compute the number of
  hash buckets, and contains an overflow check …
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  bpf: Fix hashtab overflow check on 32-bit arches

  The hashtab code relies on roundup_pow_of_two() to compute the number of
  hash buckets, and contains an overflow check …
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-119
  - CWE-190
vendor: linux
product: linux_kernel
affected:
  - 'linux_kernel >= 3.19, < 4.19.311'
  - 'linux_kernel >= 4.20, < 5.4.273'
  - 'linux_kernel >= 5.5, < 5.10.214'
  - 'linux_kernel >= 5.11, < 5.15.153'
  - 'linux_kernel >= 5.16, < 6.1.83'
  - 'linux_kernel >= 6.2, < 6.6.23'
  - 'linux_kernel >= 6.7, < 6.7.11'
  - 'linux_kernel >= 6.8, < 6.8.2'
patched:
  - linux_kernel 6.8.2
published: '2024-04-17'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T01:17:28.903'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2024-26884'
references:
  - url: 'https://git.kernel.org/stable/c/33ec04cadb77605b71d9298311919303d390c4d5'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/3b08cfc65f07b1132c1979d73f014ae6e04de55d'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/64f00b4df0597590b199b62a37a165473bf658a6'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/6787d916c2cf9850c97a0a3f73e08c43e7d973b1'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/8435f0961bf3dc65e204094349bd9aeaac1f8868'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/92c81fbb3ed2e0dfc33a4183a67135e1ab566ace'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/a6fa75b5096c0f9826a4fabe22d907b0a5bb1016'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/a83fdaeaea3677b83a53f72ace2d73a19bcd6d93'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/d817f0d34d927f2deb17dadbfe212c9a6a32ac3e'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/33ec04cadb77605b71d9298311919303d390c4d5'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/3b08cfc65f07b1132c1979d73f014ae6e04de55d'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/64f00b4df0597590b199b62a37a165473bf658a6'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/6787d916c2cf9850c97a0a3f73e08c43e7d973b1'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/8435f0961bf3dc65e204094349bd9aeaac1f8868'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/92c81fbb3ed2e0dfc33a4183a67135e1ab566ace'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/a6fa75b5096c0f9826a4fabe22d907b0a5bb1016'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/a83fdaeaea3677b83a53f72ace2d73a19bcd6d93'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://git.kernel.org/stable/c/d817f0d34d927f2deb17dadbfe212c9a6a32ac3e'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://cert-portal.siemens.com/productcert/html/ssa-265688.html'
    label: 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
tags:
  - nvd
  - cve.org
epss: 0.00251
epssPercentile: 0.15302
ingestedAt: '2026-10-15T03:30:12.656Z'
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2024-10-30T19:28:25.440727Z'
---

## Overview

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

bpf: Fix hashtab overflow check on 32-bit arches

The hashtab code relies on roundup_pow_of_two() to compute the number of
hash buckets, and contains an overflow check by checking if the
resulting value is 0. However, on 32-bit arches, the roundup code itself
can overflow by doing a 32-bit left-shift of an unsigned long value,
which is undefined behaviour, so it is not guaranteed to truncate
neatly. This was triggered by syzbot on the DEVMAP_HASH type, which
contains the same check, copied from the hashtab code. So apply the same
fix to hashtab, by moving the overflow check to before the roundup.

## Affected

- `linux_kernel >= 3.19, < 4.19.311`
- `linux_kernel >= 4.20, < 5.4.273`
- `linux_kernel >= 5.5, < 5.10.214`
- `linux_kernel >= 5.11, < 5.15.153`
- `linux_kernel >= 5.16, < 6.1.83`
- `linux_kernel >= 6.2, < 6.6.23`
- `linux_kernel >= 6.7, < 6.7.11`
- `linux_kernel >= 6.8, < 6.8.2`

## Remediation

Upgrade past the affected range:

- `linux_kernel 6.8.2`
