CVE-2021-47497

Updated: 2025-09-28 04:15:16.551889

Description:

In the Linux kernel, the following vulnerability has been resolved: nvmem: Fix shift-out-of-bound (UBSAN) with byte size cells If a cell has 'nbits' equal to a multiple of BITS_PER_BYTE the logic *p &= GENMASK((cell->nbits%BITS_PER_BYTE) - 1, 0); will become undefined behavior because nbits modulo BITS_PER_BYTE is 0, and we subtract one from that making a large number that is then shifted more than the number of bits that fit into an unsigned long. UBSAN reports this problem: UBSAN: shift-out-of-bounds in drivers/nvmem/core.c:1386:8 shift exponent 64 is too large for 64-bit type 'unsigned long' CPU: 6 PID: 7 Comm: kworker/u16:0 Not tainted 5.15.0-rc3+ #9 Hardware name: Google Lazor (rev3+) with KB Backlight (DT) Workqueue: events_unbound deferred_probe_work_func Call trace: dump_backtrace+0x0/0x170 show_stack+0x24/0x30 dump_stack_lvl+0x64/0x7c dump_stack+0x18/0x38 ubsan_epilogue+0x10/0x54 __ubsan_handle_shift_out_of_bounds+0x180/0x194 __nvmem_cell_read+0x1ec/0x21c nvmem_cell_read+0x58/0x94 nvmem_cell_read_variable_common+0x4c/0xb0 nvmem_cell_read_variable_le_u32+0x40/0x100 a6xx_gpu_init+0x170/0x2f4 adreno_bind+0x174/0x284 component_bind_all+0xf0/0x264 msm_drm_bind+0x1d8/0x7a0 try_to_bring_up_master+0x164/0x1ac __component_add+0xbc/0x13c component_add+0x20/0x2c dp_display_probe+0x340/0x384 platform_probe+0xc0/0x100 really_probe+0x110/0x304 __driver_probe_device+0xb8/0x120 driver_probe_device+0x4c/0xfc __device_attach_driver+0xb0/0x128 bus_for_each_drv+0x90/0xdc __device_attach+0xc8/0x174 device_initial_probe+0x20/0x2c bus_probe_device+0x40/0xa4 deferred_probe_work_func+0x7c/0xb8 process_one_work+0x128/0x21c process_scheduled_works+0x40/0x54 worker_thread+0x1ec/0x2a8 kthread+0x138/0x158 ret_from_fork+0x10/0x20 Fix it by making sure there are any bits to mask out.


Links NIST CIRCL RHEL Ubuntu

Severity

Severity Score
CVSS Version 2.x 0.0
CVSS Version 3.x HIGH 7.8

Status

OS name Project name Version Score Severity Status Errata Last updated

Statement

AlmaLinux 9.2 ESU kernel 5.14.0 7.8 HIGH Released CLSA-2025:1759866837 2025-10-08 06:41:28 Ignored due to low severity
CentOS 6 ELS kernel 2.6.32 7.8 HIGH Not Vulnerable 2025-09-30 18:25:19 Ignored due to low severity
CentOS 7 ELS kernel 3.10.0 7.8 HIGH Released CLSA-2025:1759431860 2025-10-15 23:00:58 Ignored due to low severity
CentOS 8.4 ELS kernel 4.18.0 7.8 HIGH Released CLSA-2024:1727690947 2024-09-30 10:47:01
CentOS 8.5 ELS kernel 4.18.0 7.8 HIGH Released CLSA-2024:1727690025 2024-09-30 10:47:04
CentOS Stream 8 ELS kernel 4.18.0 7.8 HIGH Released CLSA-2024:1727815919 2024-10-01 17:27:34
CloudLinux 6 ELS kernel 2.6.32 7.8 HIGH Needs Triage 2025-09-28 21:58:36 Ignored due to low severity
CloudLinux 7 ELS kernel 3.10.0 7.8 HIGH Ignored 2025-11-08 01:46:05 CL7 support is limited
Oracle Linux 6 ELS kernel 2.6.32 7.8 HIGH Not Vulnerable 2025-11-02 10:35:11 Ignored due to low severity
Oracle Linux 7 ELS kernel 3.10.0 7.8 HIGH Released CLSA-2025:1759431869 2025-10-02 23:04:16
Total: 13