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 linux-6.1Upgrade linux | Dec 2, 2024 | Nov 19, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade bpftoolUpgrade python3-perfUpgrade kernel | Feb 11, 2025 | Nov 19, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade bpftoolUpgrade kernelUpgrade python3-perfUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernel-tools | Feb 11, 2025 | Nov 19, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Feb 10, 2025 | Nov 19, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1026-nvidiaUpgrade linux-image-6.8.0-1028-gcpUpgrade linux-image-6.11.0-1010-lowlatencyUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-gkeopUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-raspiUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-intel-iotgUpgrade linux-image-generic-64kUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.15.0-1081-azure-fdeUpgrade linux-image-5.4.0-1058-xilinx-zynqmpUpgrade linux-image-6.11.0-1009-gcpUpgrade linux-image-nvidiaUpgrade linux-image-azure-fdeUpgrade linux-image-4.15.0-2118-aws-fipsUpgrade linux-image-6.11.0-1009-azure-fdeUpgrade linux-image-azure-lts-22.04Upgrade linux-image-5.4.0-1143-gcpUpgrade linux-image-oem-osp1Upgrade linux-image-oem-22.04cUpgrade linux-image-4.15.0-2097-azure-fipsUpgrade linux-image-oem-22.04Upgrade linux-image-ibmUpgrade linux-image-5.4.0-1138-oracleUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.15.0-1033-nvidia-tegra-rtUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-raspi-realtimeUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-6.11.0-1011-oracleUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.11.0-18-genericUpgrade linux-image-5.4.0-1086-ibmUpgrade linux-image-6.11.0-1005-realtimeUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-aws-fipsUpgrade linux-image-azure-lts-20.04Upgrade linux-image-raspi2Upgrade linux-image-6.11.0-1009-azureUpgrade linux-image-aws-lts-20.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-5.15.0-1021-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1073-intel-iotgUpgrade linux-image-5.15.0-133-generic-lpaeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-6.8.0-58-generic-64kUpgrade linux-image-5.4.0-208-generic-lpaeUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-oem-20.04bUpgrade linux-image-6.8.1-1020-realtimeUpgrade linux-image-oem-20.04cUpgrade linux-image-fipsUpgrade linux-image-oem-22.04aUpgrade linux-image-5.4.0-208-genericUpgrade linux-image-azure-nvidiaUpgrade linux-image-gcp-fipsUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-4.15.0-1142-oracleUpgrade linux-image-5.15.0-1033-nvidia-tegraUpgrade linux-image-6.8.0-58-genericUpgrade linux-image-6.8.0-1026-nvidia-lowlatencyUpgrade linux-image-azure-lts-18.04Upgrade linux-image-5.15.0-1021-nvidia-tegra-igxUpgrade linux-image-6.8.0-1026-nvidia-lowlatency-64kUpgrade linux-image-5.4.0-1099-bluefieldUpgrade linux-image-ibm-classicUpgrade linux-image-gkeop-6.8Upgrade linux-image-aws-hweUpgrade linux-image-4.15.0-1173-gcpUpgrade linux-image-5.15.0-1072-raspiUpgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-aws-lts-22.04Upgrade linux-image-intelUpgrade linux-image-5.15.0-133-genericUpgrade linux-image-6.8.0-58-lowlatencyUpgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-5.15.0-1076-kvmUpgrade linux-image-6.11.0-1015-oemUpgrade linux-image-5.4.0-208-lowlatencyUpgrade linux-image-4.15.0-237-genericUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-genericUpgrade linux-image-generic-lpaeUpgrade linux-image-azure-lts-24.04Upgrade linux-image-gke-5.15Upgrade linux-image-lowlatencyUpgrade linux-image-azureUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-5.15.0-133-lowlatency-64kUpgrade linux-image-4.15.0-237-lowlatencyUpgrade linux-image-6.11.0-1011-oracle-64kUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-gcp-lts-18.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-oracle-lts-20.04Upgrade linux-image-virtual-hwe-16.04Upgrade linux-image-oem-24.04bUpgrade linux-image-nvidia-tegraUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.11.0-18-generic-64kUpgrade linux-image-5.15.0-134-generic-lpaeUpgrade linux-image-6.8.0-1024-oracleUpgrade linux-image-gcpUpgrade linux-image-6.8.0-1024-ibmUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.11.0-1008-raspiUpgrade linux-image-5.15.0-1078-awsUpgrade linux-image-oracle-lts-18.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-5.15.0-133-generic-64kUpgrade linux-image-5.15.0-1060-gkeopUpgrade linux-image-oem-22.04bUpgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1010-gkeopUpgrade linux-image-5.4.0-1048-iotUpgrade linux-image-4.15.0-2081-gcp-fipsUpgrade linux-image-4.15.0-1163-kvmUpgrade linux-image-4.15.0-1188-azureUpgrade linux-image-5.15.0-133-lowlatencyUpgrade linux-image-6.11.0-1010-lowlatency-64kUpgrade linux-image-5.4.0-1116-fipsUpgrade linux-image-nvidia-64kUpgrade linux-image-6.8.0-1024-oracle-64kUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-oem-22.04dUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-1027-awsUpgrade linux-image-5.15.0-1080-awsUpgrade linux-image-6.8.0-1027-azureUpgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-aws-lts-18.04Upgrade linux-image-5.15.0-134-generic-64kUpgrade linux-image-5.15.0-1077-gcpUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-58-lowlatency-64kUpgrade linux-image-oem-24.04Upgrade linux-image-generic-hwe-18.04Upgrade linux-image-kvmUpgrade linux-image-4.15.0-1135-fipsUpgrade linux-image-gcp-64kUpgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-1026-nvidia-64kUpgrade linux-image-5.4.0-1127-kvmUpgrade linux-image-5.15.0-1072-nvidia-lowlatencyUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-4.15.0-1180-awsUpgrade linux-image-6.11.0-1009-awsUpgrade linux-image-awsUpgrade linux-image-bluefieldUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-1075-gkeUpgrade linux-image-oem-20.04Upgrade linux-image-5.15.0-1072-nvidiaUpgrade linux-image-5.15.0-1044-xilinx-zynqmpUpgrade linux-image-gkeUpgrade linux-image-5.15.0-134-genericUpgrade linux-image-oem-20.04dUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-oem-24.04aUpgrade linux-image-oemUpgrade linux-image-5.4.0-1145-azureUpgrade linux-image-5.15.0-1070-ibmUpgrade linux-image-generic-hwe-16.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1081-azureUpgrade linux-image-aws-lts-24.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-oracleUpgrade linux-image-5.4.0-1142-awsUpgrade linux-image-6.8.0-1026-oemUpgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-virtualUpgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1075-oracleUpgrade linux-image-5.4.0-1140-awsUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-realtimeUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-azure-fipsUpgrade linux-image-6.8.0-1028-gcp-64kUpgrade linux-image-6.8.0-1027-azure-fdeUpgrade linux-image-6.8.0-1023-gke | 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