---
id: CVE-2024-56625
title: 'can: dev: can_set_termination(): allow sleeping GPIOs'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  can: dev: can_set_termination(): allow sleeping GPIOs

  In commit 6e86a1543c37 ("can: dev: provide optional GPIO based
  termination support") GPIO based termination suppo…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 <
    faa0a1975a6fbce30616775216606eb8d6388ea1
  - >-
    Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 <
    46637a608fb1ee871a0ad8bf70d917d5d95ac251
  - >-
    Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 <
    1ac442f25c19953d2f33b92549628b0aeac83db6
  - >-
    Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 <
    3b0c5bb437d31a9864f633b85cbc42d2f6c51c96
  - >-
    Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 <
    ee1dfbdd8b4b6de85e96ae2059dc9c1bdb6b49b5
  - Linux 5.15
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-05T20:29:22.417501Z'
published: '2024-12-27'
updated: '2026-11-05'
sourceUpdated: '2026-11-05T20:31:25.208Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2024-56625'
references:
  - url: 'https://git.kernel.org/stable/c/faa0a1975a6fbce30616775216606eb8d6388ea1'
  - url: 'https://git.kernel.org/stable/c/46637a608fb1ee871a0ad8bf70d917d5d95ac251'
  - url: 'https://git.kernel.org/stable/c/1ac442f25c19953d2f33b92549628b0aeac83db6'
  - url: 'https://git.kernel.org/stable/c/3b0c5bb437d31a9864f633b85cbc42d2f6c51c96'
  - url: 'https://git.kernel.org/stable/c/ee1dfbdd8b4b6de85e96ae2059dc9c1bdb6b49b5'
tags:
  - cve.org
epss: 0.00207
epssPercentile: 0.10846
ingestedAt: '2026-11-05T22:38:31.835Z'
---

## Overview

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

can: dev: can_set_termination(): allow sleeping GPIOs

In commit 6e86a1543c37 ("can: dev: provide optional GPIO based
termination support") GPIO based termination support was added.

For no particular reason that patch uses gpiod_set_value() to set the
GPIO. This leads to the following warning, if the systems uses a
sleeping GPIO, i.e. behind an I2C port expander:

| WARNING: CPU: 0 PID: 379 at /drivers/gpio/gpiolib.c:3496 gpiod_set_value+0x50/0x6c
| CPU: 0 UID: 0 PID: 379 Comm: ip Not tainted 6.11.0-20241016-1 #1 823affae360cc91126e4d316d7a614a8bf86236c

Replace gpiod_set_value() by gpiod_set_value_cansleep() to allow the
use of sleeping GPIOs.

## Affected

- `Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 < faa0a1975a6fbce30616775216606eb8d6388ea1`
- `Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 < 46637a608fb1ee871a0ad8bf70d917d5d95ac251`
- `Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 < 1ac442f25c19953d2f33b92549628b0aeac83db6`
- `Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 < 3b0c5bb437d31a9864f633b85cbc42d2f6c51c96`
- `Linux >= 6e86a1543c378f2e8837ad88f361b7bf606c80f7 < ee1dfbdd8b4b6de85e96ae2059dc9c1bdb6b49b5`
- `Linux 5.15`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
