---
id: CVE-2026-98849
title: 'pfcp: fix socket lifetime on netdevice registration failure'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  pfcp: fix socket lifetime on netdevice registration failure

  pfcp_newlink() creates the UDP socket before register_netdevice().
  If registration fails after pfcp_dev_ini…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba <
    dcb8f6a79c3360a440c399d85df465a6e59351f1
  - >-
    Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba <
    4b8ce1686dea1a10805a0807bf492409b0300ee1
  - >-
    Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba <
    2cee3603ec1d9b5ec7f2121ea3efe9488e906f46
  - >-
    Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba <
    0f17d2e3dd9cda3ee6d94033d5e5489af168920d
  - Linux 6.10
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:50:48.743Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98849'
references:
  - url: 'https://git.kernel.org/stable/c/dcb8f6a79c3360a440c399d85df465a6e59351f1'
  - url: 'https://git.kernel.org/stable/c/4b8ce1686dea1a10805a0807bf492409b0300ee1'
  - url: 'https://git.kernel.org/stable/c/2cee3603ec1d9b5ec7f2121ea3efe9488e906f46'
  - url: 'https://git.kernel.org/stable/c/0f17d2e3dd9cda3ee6d94033d5e5489af168920d'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.465Z'
---

## Overview

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

pfcp: fix socket lifetime on netdevice registration failure

pfcp_newlink() creates the UDP socket before register_netdevice().
If registration fails after pfcp_dev_init() succeeds, the core calls
pfcp_dev_uninit(), which releases the socket and clears pfcp->sk.
The newlink error path then releases it again, causing a NULL pointer
dereference. This was observed with failslab fault injection:

  FAULT_INJECTION: forcing a failure.
  kobject: kobject_add_internal failed for pfcp0 (error: -12 parent: net)
  BUG: KASAN: null-ptr-deref in udp_tunnel_sock_release+0x1c/0x50
  Read of size 8 at addr 0000000000000120 by task ip/1037
  Call trace:
   show_stack+0x18/0x24 (C)
   dump_stack_lvl+0x78/0x90
   print_report+0x468/0x5cc
   kasan_report+0xa4/0xf0
   __asan_load8+0x7c/0xd0
   udp_tunnel_sock_release+0x1c/0x50
   pfcp_newlink+0x128/0x184
   rtnl_newlink+0x848/0xe44
   rtnetlink_rcv_msg+0x468/0x514
   netlink_rcv_skb+0xc0/0x1f0
   rtnetlink_rcv+0x18/0x24
   netlink_unicast+0x4b8/0x558
   netlink_sendmsg+0x2b8/0x584
   ...

Return from pfcp_del_sock() if pfcp->sk is NULL.

## Affected

- `Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba < dcb8f6a79c3360a440c399d85df465a6e59351f1`
- `Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba < 4b8ce1686dea1a10805a0807bf492409b0300ee1`
- `Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba < 2cee3603ec1d9b5ec7f2121ea3efe9488e906f46`
- `Linux >= 76c8764ef36a5d37ea2e551bda28ac7f028383ba < 0f17d2e3dd9cda3ee6d94033d5e5489af168920d`
- `Linux 6.10`

## Remediation

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