In the Linux kernel, the following vulnerability has been resolved:
net: hns3: fix kernel crash when uninstalling driver
When the driver is uninstalled and the VF is disabled concurrently, a kernel crash occurs. The reason is that the two actions call function pci_disable_sriov(). The num_VFs is checked to determine whether to release the corresponding resources. During the second calling, num_VFs is not 0 and the resource release function is called. However, the corresponding resource has been released during the first invoking. Therefore, the problem occurs:
[15277.839633][T50670] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000020 ... [15278.131557][T50670] Call trace: [15278.134686][T50670] klist_put+0x28/0x12c [15278.138682][T50670] klist_del+0x14/0x20 [15278.142592][T50670] device_del+0xbc/0x3c0 [15278.146676][T50670] pci_remove_bus_device+0x84/0x120 [15278.151714][T50670] pci_stop_and_remove_bus_device+0x6c/0x80 [15278.157447][T50670] pci_iov_remove_virtfn+0xb4/0x12c [15278.162485][T50670] sriov_disable+0x50/0x11c [15278.166829][T50670] pci_disable_sriov+0x24/0x30 [15278.171433][T50670] hnae3_unregister_ae_algo_prepare+0x60/0x90 [hnae3] [15278.178039][T50670] hclge_exit+0x28/0xd0 [hclge] [15278.182730][T50670] __se_sys_delete_module.isra.0+0x164/0x230 [15278.188550][T50670] __arm64_sys_delete_module+0x1c/0x30 [15278.193848][T50670] invoke_syscall+0x50/0x11c [15278.198278][T50670] el0_svc_common.constprop.0+0x158/0x164 [15278.203837][T50670] do_el0_svc+0x34/0xcc [15278.207834][T50670] el0_svc+0x20/0x30
For details, see the following figure.
rmmod hclge disable VFs ---------------------------------------------------- hclge_exit() sriov_numvfs_store() ... device_lock() pci_disable_sriov() hns3_pci_sriov_configure() pci_disable_sriov() sriov_disable() sriov_disable() if !num_VFs : if !num_VFs : return; return; sriov_del_vfs() sriov_del_vfs() ... ... klist_put() klist_put() ... ... num_VFs = 0; num_VFs = 0; device_unlock();
In this patch, when driver is removing, we get the device_lock() to protect num_VFs, just like sriov_numvfs_store().
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Dec 2, 2024 | Nov 19, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade python3-perfUpgrade kernelUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade bpftool | Feb 11, 2025 | Nov 19, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade python3-perfUpgrade kernelUpgrade bpftool | Feb 11, 2025 | Nov 19, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Feb 10, 2025 | Nov 19, 2024 |
| Ubuntu | — | Upgrade linux-image-nvidia-6.8Upgrade linux-image-virtualUpgrade linux-image-5.4.0-1142-awsUpgrade linux-image-bluefieldUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-oracleUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-5.15.0-134-genericUpgrade linux-image-5.15.0-1044-xilinx-zynqmpUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-6.11.0-1009-awsUpgrade linux-image-azure-cvmUpgrade linux-image-awsUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-5.15.0-1072-nvidia-lowlatencyUpgrade linux-image-5.4.0-1127-kvmUpgrade linux-image-gcp-64kUpgrade linux-image-4.15.0-1180-awsUpgrade linux-image-6.8.0-1026-nvidia-64kUpgrade linux-image-aws-lts-24.04Upgrade linux-image-4.15.0-1188-azureUpgrade linux-image-gkeUpgrade linux-image-4.15.0-2081-gcp-fipsUpgrade linux-image-6.8.0-1028-gcp-64kUpgrade linux-image-gcpUpgrade linux-image-6.8.0-1024-oracle-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-oemUpgrade linux-image-6.8.0-58-lowlatency-64kUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-5.4.0-1145-azureUpgrade linux-image-5.15.0-133-lowlatencyUpgrade linux-image-5.15.0-1072-nvidiaUpgrade linux-image-6.8.0-1027-awsUpgrade linux-image-oem-22.04dUpgrade linux-image-raspi-nolpaeUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.8.0-1010-gkeopUpgrade linux-image-oem-20.04Upgrade linux-image-4.15.0-1163-kvmUpgrade linux-image-5.15.0-1060-gkeopUpgrade linux-image-oem-22.04bUpgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-5.15.0-1080-awsUpgrade linux-image-5.4.0-1048-iotUpgrade linux-image-5.15.0-1081-azureUpgrade linux-image-5.15.0-1070-ibmUpgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1075-gkeUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-generic-hwe-16.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-24.04aUpgrade linux-image-realtimeUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-nvidia-64kUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-oracle-lts-18.04Upgrade linux-image-oem-20.04dUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-1027-azure-fdeUpgrade linux-image-5.15.0-133-generic-64kUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-5.15.0-134-generic-64kUpgrade linux-image-oracle-64kUpgrade linux-image-6.8.0-1023-gkeUpgrade linux-image-azure-fipsUpgrade linux-image-6.8.0-1026-oemUpgrade linux-image-5.4.0-1140-awsUpgrade linux-image-5.15.0-1078-awsUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-6.8.0-1024-oracleUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-5.4.0-1116-fipsUpgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-6.8.0-1024-ibmUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-5.15.0-1075-oracleUpgrade linux-image-6.8.0-1027-azureUpgrade linux-image-5.15.0-1077-gcpUpgrade linux-image-oem-24.04Upgrade linux-image-aws-lts-18.04Upgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-kvmUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-5.15.0-134-generic-lpaeUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-4.15.0-1135-fipsUpgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-5.4.0-1143-gcpUpgrade linux-image-4.15.0-2097-azure-fipsUpgrade linux-image-4.15.0-2118-aws-fipsUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-raspiUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-intel-iotgUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-nvidiaUpgrade linux-image-generic-64kUpgrade linux-image-azure-lts-22.04Upgrade linux-image-nvidia-tegraUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-5.15.0-1072-raspiUpgrade linux-image-6.8.0-1026-nvidia-lowlatencyUpgrade linux-image-gkeop-6.8Upgrade linux-image-azure-lts-18.04Upgrade linux-image-6.11.0-1015-oemUpgrade linux-image-5.4.0-208-lowlatencyUpgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-5.15.0-133-genericUpgrade linux-image-lowlatency-64kUpgrade linux-image-gkeopUpgrade linux-image-5.15.0-1073-intel-iotgUpgrade linux-image-5.15.0-1021-nvidia-tegra-igx-rtUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-58-generic-64kUpgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-5.15.0-133-generic-lpaeUpgrade linux-image-5.4.0-208-generic-lpaeUpgrade linux-image-6.8.1-1020-realtimeUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-oem-22.04aUpgrade linux-image-oem-20.04cUpgrade linux-image-oem-20.04bUpgrade linux-image-oem-22.04cUpgrade linux-image-fipsUpgrade linux-image-5.15.0-1076-kvmUpgrade linux-image-6.8.0-1026-nvidia-lowlatency-64kUpgrade linux-image-5.15.0-1033-nvidia-tegra-rtUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-ibmUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-5.15.0-1033-nvidia-tegraUpgrade linux-image-virtual-hwe-16.04Upgrade linux-image-intelUpgrade linux-image-aws-lts-22.04Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-gcp-lts-18.04Upgrade linux-image-oem-osp1Upgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.4.0-208-genericUpgrade linux-image-6.8.0-1026-nvidiaUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-58-lowlatencyUpgrade linux-image-5.4.0-1138-oracleUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-aws-hweUpgrade linux-image-ibm-classicUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-raspi2Upgrade linux-image-4.15.0-1142-oracleUpgrade linux-image-5.15.0-1021-nvidia-tegra-igxUpgrade linux-image-5.15.0-133-lowlatency-64kUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-4.15.0-237-genericUpgrade linux-image-azureUpgrade linux-image-genericUpgrade linux-image-6.11.0-1011-oracle-64kUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-oem-24.04bUpgrade linux-image-4.15.0-237-lowlatencyUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-gke-5.15Upgrade linux-image-6.11.0-1009-azureUpgrade linux-image-raspi-realtimeUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-aws-fipsUpgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-azure-lts-20.04Upgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-58-genericUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-5.4.0-1086-ibmUpgrade linux-image-6.11.0-1011-oracleUpgrade linux-image-6.8.0-1028-gcpUpgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-5.4.0-1099-bluefieldUpgrade linux-image-4.15.0-1173-gcpUpgrade linux-image-oem-22.04Upgrade linux-image-gcp-fipsUpgrade linux-image-5.4.0-1058-xilinx-zynqmpUpgrade linux-image-azure-nvidiaUpgrade linux-image-5.15.0-1081-azure-fdeUpgrade linux-image-aws-lts-20.04Upgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-6.11.0-18-generic | Feb 20, 2025 | Nov 19, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 13, 2025 | Nov 19, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub