Upstream information

CVE-2024-14040 at MITRE

Description

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

net: nexthop: Increase weight to u16

In CLOS networks, as link failures occur at various points in the network,
ECMP weights of the involved nodes are adjusted to compensate. With high
fan-out of the involved nodes, and overall high number of nodes,
a (non-)ECMP weight ratio that we would like to configure does not fit into
8 bits. Instead of, say, 255:254, we might like to configure something like
1000:999. For these deployments, the 8-bit weight may not be enough.

To that end, in this patch increase the next hop weight from u8 to u16.

Increasing the width of an integral type can be tricky, because while the
code still compiles, the types may not check out anymore, and numerical
errors come up. To prevent this, the conversion was done in two steps.
First the type was changed from u8 to a single-member structure, which
invalidated all uses of the field. This allowed going through them one by
one and audit for type correctness. Then the structure was replaced with a
vanilla u16 again. This should ensure that no place was missed.

The UAPI for configuring nexthop group members is that an attribute
NHA_GROUP carries an array of struct nexthop_grp entries:

struct nexthop_grp {
__u32 id; /* nexthop id - must exist */
__u8 weight; /* weight of this nexthop */
__u8 resvd1;
__u16 resvd2;
};

The field resvd1 is currently validated and required to be zero. We can
lift this requirement and carry high-order bits of the weight in the
reserved field:

struct nexthop_grp {
__u32 id; /* nexthop id - must exist */
__u8 weight; /* weight of this nexthop */
__u8 weight_high;
__u16 resvd2;
};

Keeping the fields split this way was chosen in case an existing userspace
makes assumptions about the width of the weight field, and to sidestep any
endianness issues.

The weight field is currently encoded as the weight value minus one,
because weight of 0 is invalid. This same trick is impossible for the new
weight_high field, because zero must mean actual zero. With this in place:

- Old userspace is guaranteed to carry weight_high of 0, therefore
configuring 8-bit weights as appropriate. When dumping nexthops with
16-bit weight, it would only show the lower 8 bits. But configuring such
nexthops implies existence of userspace aware of the extension in the
first place.

- New userspace talking to an old kernel will work as long as it only
attempts to configure 8-bit weights, where the high-order bits are zero.
Old kernel will bounce attempts at configuring >8-bit weights.

Renaming reserved fields as they are allocated for some purpose is commonly
done in Linux. Whoever touches a reserved field is doing so at their own
risk. nexthop_grp::resvd1 in particular is currently used by at least
strace, however they carry an own copy of UAPI headers, and the conversion
should be trivial. A helper is provided for decoding the weight out of the
two fields. Forcing a conversion seems preferable to bending backwards and
introducing anonymous unions or whatever.

SUSE information

Overall state of this security issue: Pending

This issue is currently rated as having moderate severity.

CVSS v3 Scores
CVSS detail CNA (NVD) Linux Kernel CNA SUSE
Base Score 7.8 7.8 5.5
Vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Attack Vector Local Local Local
Attack Complexity Low Low Low
Privileges Required Low Low Low
User Interaction None None None
Scope Unchanged Unchanged Unchanged
Confidentiality Impact High High None
Integrity Impact High High None
Availability Impact High High High
CVSSv3 Version 3.1 3.1 3.1

Note from the SUSE Security Team on the kernel-default package

SUSE will no longer fix all CVEs in the Linux Kernel anymore, but declare some bug classes as won't fix. Please refer to TID 21496 for more details.

SUSE Bugzilla entries: 1272663 [NEW], 1273018 [RESOLVED / INVALID]

No SUSE Security Announcements cross referenced.


Status of this issue by product and package

Please note that this evaluation state might be work in progress, incomplete or outdated. Also information for service packs in the LTSS phase is only included for issues meeting the LTSS criteria. If in doubt, feel free to contact us for clarification. The updates are grouped by state of their lifecycle. SUSE product lifecycles are documented on the lifecycle page.

Product(s) Source package State
Products under general support and receiving all security fixes.
SUSE Linux Enterprise Desktop 15 SP7 kernel-default Affected
SUSE Linux Enterprise Desktop 15 SP7 kernel-source In progress
SUSE Linux Enterprise High Availability Extension 15 SP7 kernel-default Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 kernel-source Affected
SUSE Linux Enterprise High Availability Extension 16.0 kernel-default Already fixed
SUSE Linux Enterprise High Availability Extension 16.0 kernel-source Already fixed
SUSE Linux Enterprise High Availability Extension 16.1 kernel-default Already fixed
SUSE Linux Enterprise High Availability Extension 16.1 kernel-source Already fixed
SUSE Linux Enterprise Live Patching 15 SP7 kernel-default Affected
SUSE Linux Enterprise Live Patching 15 SP7 kernel-source Affected
SUSE Linux Enterprise Micro 5.3 kernel-default Affected
SUSE Linux Enterprise Micro 5.3 kernel-rt Affected
SUSE Linux Enterprise Micro 5.3 kernel-source In progress
SUSE Linux Enterprise Micro 5.3 kernel-source-rt In progress
SUSE Linux Enterprise Micro 5.4 kernel-default Affected
SUSE Linux Enterprise Micro 5.4 kernel-rt Affected
SUSE Linux Enterprise Micro 5.4 kernel-source In progress
SUSE Linux Enterprise Micro 5.4 kernel-source-rt In progress
SUSE Linux Enterprise Micro 5.5 kernel-default Affected
SUSE Linux Enterprise Micro 5.5 kernel-source In progress
SUSE Linux Enterprise Micro 5.5 kernel-source-rt In progress
SUSE Linux Enterprise Module for Basesystem 15 SP7 kernel-default Affected
SUSE Linux Enterprise Module for Basesystem 15 SP7 kernel-source In progress
SUSE Linux Enterprise Module for Development Tools 15 SP7 kernel-default Affected
SUSE Linux Enterprise Module for Development Tools 15 SP7 kernel-source In progress
SUSE Linux Enterprise Module for Legacy 15 SP7 kernel-default Affected
SUSE Linux Enterprise Module for Legacy 15 SP7 kernel-source Affected
SUSE Linux Enterprise Module for Public Cloud 15 SP7 kernel-default Affected
SUSE Linux Enterprise Module for Public Cloud 15 SP7 kernel-source Affected
SUSE Linux Enterprise Real Time 15 SP7 kernel-source-rt In progress
SUSE Linux Enterprise Server 15 SP7 kernel-default Affected
SUSE Linux Enterprise Server 15 SP7 kernel-source In progress
SUSE Linux Enterprise Server 16.0 kernel-default Already fixed
SUSE Linux Enterprise Server 16.0 kernel-source Already fixed
SUSE Linux Enterprise Server 16.1 kernel-default Already fixed
SUSE Linux Enterprise Server 16.1 kernel-source Already fixed
SUSE Linux Enterprise Server for SAP Applications 15 SP7 kernel-default Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP7 kernel-source In progress
SUSE Linux Enterprise Server for SAP applications 16.0 kernel-default Already fixed
SUSE Linux Enterprise Server for SAP applications 16.0 kernel-source Already fixed
SUSE Linux Enterprise Server for SAP applications 16.1 kernel-default Already fixed
SUSE Linux Enterprise Server for SAP applications 16.1 kernel-source Already fixed
SUSE Linux Enterprise Workstation Extension 15 SP7 kernel-default Affected
SUSE Linux Enterprise Workstation Extension 15 SP7 kernel-source Affected
SUSE Linux Micro 6.0 kernel-default Affected
SUSE Linux Micro 6.0 kernel-source Affected
SUSE Linux Micro 6.0 kernel-source-rt Affected
SUSE Linux Micro 6.1 kernel-default Affected
SUSE Linux Micro 6.1 kernel-source Affected
SUSE Linux Micro 6.1 kernel-source-rt Affected
SUSE Linux Micro 6.2 kernel-default Already fixed
SUSE Linux Micro 6.2 kernel-source Already fixed
SUSE Linux Micro Extras 6.0 kernel-default Affected
SUSE Linux Micro Extras 6.0 kernel-source Affected
SUSE Linux Micro Extras 6.0 kernel-source-rt Affected
SUSE Linux Micro Extras 6.1 kernel-default Affected
SUSE Linux Micro Extras 6.1 kernel-source Affected
SUSE Real Time Module 15 SP7 kernel-source-rt In progress
openSUSE Leap 16.0 kernel-source Already fixed
Products under Long Term Service Pack support and receiving important and critical security fixes.
SUSE Linux Enterprise High Performance Computing 12 SP5 kernel-source Not affected
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS kernel-default Affected
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP5 kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS kernel-default Affected
SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS kernel-source Affected
SUSE Linux Enterprise Live Patching 12 SP5 kernel-default Not affected
SUSE Linux Enterprise Live Patching 12 SP5 kernel-source Not affected
SUSE Linux Enterprise Live Patching 15 SP4 kernel-default Affected
SUSE Linux Enterprise Live Patching 15 SP4 kernel-source Affected
SUSE Linux Enterprise Live Patching 15 SP5 kernel-default Affected
SUSE Linux Enterprise Live Patching 15 SP5 kernel-source Affected
SUSE Linux Enterprise Module for Basesystem 15 SP4 kernel-source Affected
SUSE Linux Enterprise Module for Basesystem 15 SP5 kernel-source Affected
SUSE Linux Enterprise Module for Basesystem 15 SP6 kernel-source Affected
SUSE Linux Enterprise Module for Development Tools 15 SP4 kernel-source Affected
SUSE Linux Enterprise Module for Development Tools 15 SP5 kernel-source Affected
SUSE Linux Enterprise Module for Development Tools 15 SP6 kernel-source Affected
SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE kernel-default Not affected
SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE kernel-source Not affected
SUSE Linux Enterprise Server 12 SP5 kernel-source Not affected
SUSE Linux Enterprise Server 12 SP5-LTSS kernel-default Not affected
SUSE Linux Enterprise Server 12 SP5-LTSS kernel-source Not affected
SUSE Linux Enterprise Server 15 SP4 kernel-source Affected
SUSE Linux Enterprise Server 15 SP4-LTSS kernel-default Affected
SUSE Linux Enterprise Server 15 SP4-LTSS kernel-source Affected
SUSE Linux Enterprise Server 15 SP5 kernel-source Affected
SUSE Linux Enterprise Server 15 SP5-LTSS kernel-default Affected
SUSE Linux Enterprise Server 15 SP5-LTSS kernel-source Affected
SUSE Linux Enterprise Server 15 SP6 kernel-source Affected
SUSE Linux Enterprise Server 15 SP6-LTSS kernel-default Affected
SUSE Linux Enterprise Server 15 SP6-LTSS kernel-source Affected
SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 kernel-default Not affected
SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 kernel-source Not affected
SUSE Linux Enterprise Server for SAP Applications 15 SP4 kernel-default Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP4 kernel-source Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP5 kernel-default Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP5 kernel-source Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP6 kernel-default Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP6 kernel-source Affected
Products past their end of life and not receiving proactive updates anymore.
SUSE CaaS Platform 4.0 kernel-source Not affected
SUSE Enterprise Storage 6 kernel-source Not affected
SUSE Enterprise Storage 7 kernel-source Affected
SUSE Enterprise Storage 7.1 kernel-source Affected
SUSE Linux Enterprise Desktop 11 SP4 kernel-source Not affected
SUSE Linux Enterprise Desktop 15 SP1 kernel-source Not affected
SUSE Linux Enterprise Desktop 15 SP2 kernel-source Affected
SUSE Linux Enterprise Desktop 15 SP3 kernel-source Affected
SUSE Linux Enterprise Desktop 15 SP4 kernel-source Affected
SUSE Linux Enterprise Desktop 15 SP5 kernel-source Affected
SUSE Linux Enterprise Desktop 15 SP6 kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP1 kernel-source Not affected
SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS kernel-source Not affected
SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS kernel-source Not affected
SUSE Linux Enterprise High Performance Computing 15 SP2 kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP3 kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP4 kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS kernel-source Affected
SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS kernel-source Affected
SUSE Linux Enterprise Micro 5.0 kernel-default Not affected
SUSE Linux Enterprise Micro 5.1 kernel-default Affected
SUSE Linux Enterprise Micro 5.2 kernel-default Affected
SUSE Linux Enterprise Micro 5.2 kernel-source Affected
SUSE Linux Enterprise Module for Basesystem 15 SP1 kernel-source Not affected
SUSE Linux Enterprise Module for Basesystem 15 SP2 kernel-source Affected
SUSE Linux Enterprise Module for Basesystem 15 SP3 kernel-source Affected
SUSE Linux Enterprise Module for Development Tools 15 SP1 kernel-source Not affected
SUSE Linux Enterprise Module for Development Tools 15 SP2 kernel-source Affected
SUSE Linux Enterprise Module for Development Tools 15 SP3 kernel-source Affected
SUSE Linux Enterprise Real Time 15 SP2 kernel-source Affected
SUSE Linux Enterprise Real Time 15 SP3 kernel-source Affected
SUSE Linux Enterprise Real Time 15 SP4 kernel-source Affected
SUSE Linux Enterprise Real Time 15 SP4 kernel-source-rt Affected
SUSE Linux Enterprise Real Time 15 SP5 kernel-source-rt Affected
SUSE Linux Enterprise Server 11 SP4 kernel-source Not affected
SUSE Linux Enterprise Server 11 SP4-LTSS kernel-source Not affected
SUSE Linux Enterprise Server 15 SP1 kernel-source Not affected
SUSE Linux Enterprise Server 15 SP1-BCL kernel-source Not affected
SUSE Linux Enterprise Server 15 SP1-LTSS kernel-default Not affected
SUSE Linux Enterprise Server 15 SP1-LTSS kernel-source Not affected
SUSE Linux Enterprise Server 15 SP2 kernel-source Affected
SUSE Linux Enterprise Server 15 SP2-BCL kernel-source Affected
SUSE Linux Enterprise Server 15 SP2-LTSS kernel-default Affected
SUSE Linux Enterprise Server 15 SP2-LTSS kernel-source Affected
SUSE Linux Enterprise Server 15 SP3 kernel-source Affected
SUSE Linux Enterprise Server 15 SP3-BCL kernel-source Affected
SUSE Linux Enterprise Server 15 SP3-LTSS kernel-default Affected
SUSE Linux Enterprise Server 15 SP3-LTSS kernel-source Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP1 kernel-source Not affected
SUSE Linux Enterprise Server for SAP Applications 15 SP2 kernel-source Affected
SUSE Linux Enterprise Server for SAP Applications 15 SP3 kernel-source Affected
SUSE Manager Proxy 4.0 kernel-source Not affected
SUSE Manager Proxy 4.1 kernel-source Affected
SUSE Manager Proxy 4.2 kernel-source Affected
SUSE Manager Proxy 4.3 kernel-source Affected
SUSE Manager Proxy LTS 4.3 kernel-source Affected
SUSE Manager Retail Branch Server 4.0 kernel-source Not affected
SUSE Manager Retail Branch Server 4.1 kernel-source Affected
SUSE Manager Retail Branch Server 4.2 kernel-source Affected
SUSE Manager Retail Branch Server 4.3 kernel-source Affected
SUSE Manager Retail Branch Server LTS 4.3 kernel-source Affected
SUSE Manager Server 4.0 kernel-source Not affected
SUSE Manager Server 4.1 kernel-source Affected
SUSE Manager Server 4.2 kernel-source Affected
SUSE Manager Server 4.3 kernel-source Affected
SUSE Manager Server LTS 4.3 kernel-source Affected
SUSE Real Time Module 15 SP4 kernel-source-rt Affected
SUSE Real Time Module 15 SP5 kernel-source-rt Affected
openSUSE Leap 15.3 kernel-source Affected
openSUSE Leap 15.4 kernel-source Affected
openSUSE Leap 15.4 kernel-source-rt Affected
openSUSE Leap 15.5 kernel-source Affected
openSUSE Leap 15.5 kernel-source-rt Affected
openSUSE Leap 15.6 kernel-source Affected


SUSE Timeline for this CVE

CVE page created: Sun Jul 26 13:26:05 2026
CVE page last modified: Sat Sep 5 21:25:47 2026