Vulnerability Details CVE-2023-53060
In the Linux kernel, the following vulnerability has been resolved:
igb: revert rtnl_lock() that causes deadlock
The commit 6faee3d4ee8b ("igb: Add lock to avoid data race") adds
rtnl_lock to eliminate a false data race shown below
(FREE from device detaching) | (USE from netdev core)
igb_remove | igb_ndo_get_vf_config
igb_disable_sriov | vf >= adapter->vfs_allocated_count?
kfree(adapter->vf_data) |
adapter->vfs_allocated_count = 0 |
| memcpy(... adapter->vf_data[vf]
The above race will never happen and the extra rtnl_lock causes deadlock
below
[ 141.420169] <TASK>
[ 141.420672] __schedule+0x2dd/0x840
[ 141.421427] schedule+0x50/0xc0
[ 141.422041] schedule_preempt_disabled+0x11/0x20
[ 141.422678] __mutex_lock.isra.13+0x431/0x6b0
[ 141.423324] unregister_netdev+0xe/0x20
[ 141.423578] igbvf_remove+0x45/0xe0 [igbvf]
[ 141.423791] pci_device_remove+0x36/0xb0
[ 141.423990] device_release_driver_internal+0xc1/0x160
[ 141.424270] pci_stop_bus_device+0x6d/0x90
[ 141.424507] pci_stop_and_remove_bus_device+0xe/0x20
[ 141.424789] pci_iov_remove_virtfn+0xba/0x120
[ 141.425452] sriov_disable+0x2f/0xf0
[ 141.425679] igb_disable_sriov+0x4e/0x100 [igb]
[ 141.426353] igb_remove+0xa0/0x130 [igb]
[ 141.426599] pci_device_remove+0x36/0xb0
[ 141.426796] device_release_driver_internal+0xc1/0x160
[ 141.427060] driver_detach+0x44/0x90
[ 141.427253] bus_remove_driver+0x55/0xe0
[ 141.427477] pci_unregister_driver+0x2a/0xa0
[ 141.428296] __x64_sys_delete_module+0x141/0x2b0
[ 141.429126] ? mntput_no_expire+0x4a/0x240
[ 141.429363] ? syscall_trace_enter.isra.19+0x126/0x1a0
[ 141.429653] do_syscall_64+0x5b/0x80
[ 141.429847] ? exit_to_user_mode_prepare+0x14d/0x1c0
[ 141.430109] ? syscall_exit_to_user_mode+0x12/0x30
[ 141.430849] ? do_syscall_64+0x67/0x80
[ 141.431083] ? syscall_exit_to_user_mode_prepare+0x183/0x1b0
[ 141.431770] ? syscall_exit_to_user_mode+0x12/0x30
[ 141.432482] ? do_syscall_64+0x67/0x80
[ 141.432714] ? exc_page_fault+0x64/0x140
[ 141.432911] entry_SYSCALL_64_after_hwframe+0x72/0xdc
Since the igb_disable_sriov() will call pci_disable_sriov() before
releasing any resources, the netdev core will synchronize the cleanup to
avoid any races. This patch removes the useless rtnl_(un)lock to guarantee
correctness.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.0
EPSS Ranking 3.9%
CVSS Severity
CVSS v3 Score 5.5
Products affected by CVE-2023-53060
-
cpe:2.3:o:linux:linux_kernel:4.14.291
-
cpe:2.3:o:linux:linux_kernel:4.14.292
-
cpe:2.3:o:linux:linux_kernel:4.14.293
-
cpe:2.3:o:linux:linux_kernel:4.14.294
-
cpe:2.3:o:linux:linux_kernel:4.14.295
-
cpe:2.3:o:linux:linux_kernel:4.14.296
-
cpe:2.3:o:linux:linux_kernel:4.14.297
-
cpe:2.3:o:linux:linux_kernel:4.14.298
-
cpe:2.3:o:linux:linux_kernel:4.14.299
-
cpe:2.3:o:linux:linux_kernel:4.14.300
-
cpe:2.3:o:linux:linux_kernel:4.14.301
-
cpe:2.3:o:linux:linux_kernel:4.14.302
-
cpe:2.3:o:linux:linux_kernel:4.14.303
-
cpe:2.3:o:linux:linux_kernel:4.14.304
-
cpe:2.3:o:linux:linux_kernel:4.14.305
-
cpe:2.3:o:linux:linux_kernel:4.14.306
-
cpe:2.3:o:linux:linux_kernel:4.14.307
-
cpe:2.3:o:linux:linux_kernel:4.14.308
-
cpe:2.3:o:linux:linux_kernel:4.14.309
-
cpe:2.3:o:linux:linux_kernel:4.14.310
-
cpe:2.3:o:linux:linux_kernel:4.14.311
-
cpe:2.3:o:linux:linux_kernel:4.19.256
-
cpe:2.3:o:linux:linux_kernel:4.19.257
-
cpe:2.3:o:linux:linux_kernel:4.19.258
-
cpe:2.3:o:linux:linux_kernel:4.19.259
-
cpe:2.3:o:linux:linux_kernel:4.19.260
-
cpe:2.3:o:linux:linux_kernel:4.19.261
-
cpe:2.3:o:linux:linux_kernel:4.19.262
-
cpe:2.3:o:linux:linux_kernel:4.19.263
-
cpe:2.3:o:linux:linux_kernel:4.19.264
-
cpe:2.3:o:linux:linux_kernel:4.19.265
-
cpe:2.3:o:linux:linux_kernel:4.19.266
-
cpe:2.3:o:linux:linux_kernel:4.19.267
-
cpe:2.3:o:linux:linux_kernel:4.19.268
-
cpe:2.3:o:linux:linux_kernel:4.19.269
-
cpe:2.3:o:linux:linux_kernel:4.19.270
-
cpe:2.3:o:linux:linux_kernel:4.19.271
-
cpe:2.3:o:linux:linux_kernel:4.19.272
-
cpe:2.3:o:linux:linux_kernel:4.19.273
-
cpe:2.3:o:linux:linux_kernel:4.19.274
-
cpe:2.3:o:linux:linux_kernel:4.19.275
-
cpe:2.3:o:linux:linux_kernel:4.19.276
-
cpe:2.3:o:linux:linux_kernel:4.19.277
-
cpe:2.3:o:linux:linux_kernel:4.19.278
-
cpe:2.3:o:linux:linux_kernel:4.19.279
-
cpe:2.3:o:linux:linux_kernel:5.10.138
-
cpe:2.3:o:linux:linux_kernel:5.10.139
-
cpe:2.3:o:linux:linux_kernel:5.10.140
-
cpe:2.3:o:linux:linux_kernel:5.10.141
-
cpe:2.3:o:linux:linux_kernel:5.10.142
-
cpe:2.3:o:linux:linux_kernel:5.10.143
-
cpe:2.3:o:linux:linux_kernel:5.10.144
-
cpe:2.3:o:linux:linux_kernel:5.10.145
-
cpe:2.3:o:linux:linux_kernel:5.10.146
-
cpe:2.3:o:linux:linux_kernel:5.10.147
-
cpe:2.3:o:linux:linux_kernel:5.10.148
-
cpe:2.3:o:linux:linux_kernel:5.10.149
-
cpe:2.3:o:linux:linux_kernel:5.10.150
-
cpe:2.3:o:linux:linux_kernel:5.10.151
-
cpe:2.3:o:linux:linux_kernel:5.10.152
-
cpe:2.3:o:linux:linux_kernel:5.10.153
-
cpe:2.3:o:linux:linux_kernel:5.10.154
-
cpe:2.3:o:linux:linux_kernel:5.10.155
-
cpe:2.3:o:linux:linux_kernel:5.10.156
-
cpe:2.3:o:linux:linux_kernel:5.10.157
-
cpe:2.3:o:linux:linux_kernel:5.10.158
-
cpe:2.3:o:linux:linux_kernel:5.10.159
-
cpe:2.3:o:linux:linux_kernel:5.10.160
-
cpe:2.3:o:linux:linux_kernel:5.10.161
-
cpe:2.3:o:linux:linux_kernel:5.10.162
-
cpe:2.3:o:linux:linux_kernel:5.10.163
-
cpe:2.3:o:linux:linux_kernel:5.10.164
-
cpe:2.3:o:linux:linux_kernel:5.10.165
-
cpe:2.3:o:linux:linux_kernel:5.10.166
-
cpe:2.3:o:linux:linux_kernel:5.10.167
-
cpe:2.3:o:linux:linux_kernel:5.10.168
-
cpe:2.3:o:linux:linux_kernel:5.10.169
-
cpe:2.3:o:linux:linux_kernel:5.10.170
-
cpe:2.3:o:linux:linux_kernel:5.10.171
-
cpe:2.3:o:linux:linux_kernel:5.10.172
-
cpe:2.3:o:linux:linux_kernel:5.10.173
-
cpe:2.3:o:linux:linux_kernel:5.10.174
-
cpe:2.3:o:linux:linux_kernel:5.10.175
-
cpe:2.3:o:linux:linux_kernel:5.10.176
-
cpe:2.3:o:linux:linux_kernel:5.15.100
-
cpe:2.3:o:linux:linux_kernel:5.15.101
-
cpe:2.3:o:linux:linux_kernel:5.15.102
-
cpe:2.3:o:linux:linux_kernel:5.15.103
-
cpe:2.3:o:linux:linux_kernel:5.15.104
-
cpe:2.3:o:linux:linux_kernel:5.15.63
-
cpe:2.3:o:linux:linux_kernel:5.15.64
-
cpe:2.3:o:linux:linux_kernel:5.15.65
-
cpe:2.3:o:linux:linux_kernel:5.15.66
-
cpe:2.3:o:linux:linux_kernel:5.15.67
-
cpe:2.3:o:linux:linux_kernel:5.15.68
-
cpe:2.3:o:linux:linux_kernel:5.15.69
-
cpe:2.3:o:linux:linux_kernel:5.15.70
-
cpe:2.3:o:linux:linux_kernel:5.15.71
-
cpe:2.3:o:linux:linux_kernel:5.15.72
-
cpe:2.3:o:linux:linux_kernel:5.15.73
-
cpe:2.3:o:linux:linux_kernel:5.15.74
-
cpe:2.3:o:linux:linux_kernel:5.15.75
-
cpe:2.3:o:linux:linux_kernel:5.15.76
-
cpe:2.3:o:linux:linux_kernel:5.15.77
-
cpe:2.3:o:linux:linux_kernel:5.15.78
-
cpe:2.3:o:linux:linux_kernel:5.15.79
-
cpe:2.3:o:linux:linux_kernel:5.15.80
-
cpe:2.3:o:linux:linux_kernel:5.15.81
-
cpe:2.3:o:linux:linux_kernel:5.15.82
-
cpe:2.3:o:linux:linux_kernel:5.15.83
-
cpe:2.3:o:linux:linux_kernel:5.15.84
-
cpe:2.3:o:linux:linux_kernel:5.15.85
-
cpe:2.3:o:linux:linux_kernel:5.15.86
-
cpe:2.3:o:linux:linux_kernel:5.15.87
-
cpe:2.3:o:linux:linux_kernel:5.15.88
-
cpe:2.3:o:linux:linux_kernel:5.15.89
-
cpe:2.3:o:linux:linux_kernel:5.15.90
-
cpe:2.3:o:linux:linux_kernel:5.15.91
-
cpe:2.3:o:linux:linux_kernel:5.15.92
-
cpe:2.3:o:linux:linux_kernel:5.15.93
-
cpe:2.3:o:linux:linux_kernel:5.15.94
-
cpe:2.3:o:linux:linux_kernel:5.15.95
-
cpe:2.3:o:linux:linux_kernel:5.15.96
-
cpe:2.3:o:linux:linux_kernel:5.15.97
-
cpe:2.3:o:linux:linux_kernel:5.15.98
-
cpe:2.3:o:linux:linux_kernel:5.15.99
-
cpe:2.3:o:linux:linux_kernel:5.19.10
-
cpe:2.3:o:linux:linux_kernel:5.19.11
-
cpe:2.3:o:linux:linux_kernel:5.19.12
-
cpe:2.3:o:linux:linux_kernel:5.19.13
-
cpe:2.3:o:linux:linux_kernel:5.19.14
-
cpe:2.3:o:linux:linux_kernel:5.19.15
-
cpe:2.3:o:linux:linux_kernel:5.19.16
-
cpe:2.3:o:linux:linux_kernel:5.19.17
-
cpe:2.3:o:linux:linux_kernel:5.19.4
-
cpe:2.3:o:linux:linux_kernel:5.19.5
-
cpe:2.3:o:linux:linux_kernel:5.19.6
-
cpe:2.3:o:linux:linux_kernel:5.19.7
-
cpe:2.3:o:linux:linux_kernel:5.19.8
-
cpe:2.3:o:linux:linux_kernel:5.19.9
-
cpe:2.3:o:linux:linux_kernel:5.4.211
-
cpe:2.3:o:linux:linux_kernel:5.4.212
-
cpe:2.3:o:linux:linux_kernel:5.4.213
-
cpe:2.3:o:linux:linux_kernel:5.4.214
-
cpe:2.3:o:linux:linux_kernel:5.4.215
-
cpe:2.3:o:linux:linux_kernel:5.4.216
-
cpe:2.3:o:linux:linux_kernel:5.4.217
-
cpe:2.3:o:linux:linux_kernel:5.4.218
-
cpe:2.3:o:linux:linux_kernel:5.4.219
-
cpe:2.3:o:linux:linux_kernel:5.4.220
-
cpe:2.3:o:linux:linux_kernel:5.4.221
-
cpe:2.3:o:linux:linux_kernel:5.4.222
-
cpe:2.3:o:linux:linux_kernel:5.4.223
-
cpe:2.3:o:linux:linux_kernel:5.4.224
-
cpe:2.3:o:linux:linux_kernel:5.4.225
-
cpe:2.3:o:linux:linux_kernel:5.4.226
-
cpe:2.3:o:linux:linux_kernel:5.4.227
-
cpe:2.3:o:linux:linux_kernel:5.4.228
-
cpe:2.3:o:linux:linux_kernel:5.4.229
-
cpe:2.3:o:linux:linux_kernel:5.4.230
-
cpe:2.3:o:linux:linux_kernel:5.4.231
-
cpe:2.3:o:linux:linux_kernel:5.4.232
-
cpe:2.3:o:linux:linux_kernel:5.4.233
-
cpe:2.3:o:linux:linux_kernel:5.4.234
-
cpe:2.3:o:linux:linux_kernel:5.4.235
-
cpe:2.3:o:linux:linux_kernel:5.4.236
-
cpe:2.3:o:linux:linux_kernel:5.4.237
-
cpe:2.3:o:linux:linux_kernel:5.4.238
-
cpe:2.3:o:linux:linux_kernel:5.4.239
-
cpe:2.3:o:linux:linux_kernel:6.0
-
cpe:2.3:o:linux:linux_kernel:6.0.1
-
cpe:2.3:o:linux:linux_kernel:6.0.10
-
cpe:2.3:o:linux:linux_kernel:6.0.11
-
cpe:2.3:o:linux:linux_kernel:6.0.12
-
cpe:2.3:o:linux:linux_kernel:6.0.13
-
cpe:2.3:o:linux:linux_kernel:6.0.14
-
cpe:2.3:o:linux:linux_kernel:6.0.15
-
cpe:2.3:o:linux:linux_kernel:6.0.16
-
cpe:2.3:o:linux:linux_kernel:6.0.17
-
cpe:2.3:o:linux:linux_kernel:6.0.18
-
cpe:2.3:o:linux:linux_kernel:6.0.19
-
cpe:2.3:o:linux:linux_kernel:6.0.2
-
cpe:2.3:o:linux:linux_kernel:6.0.3
-
cpe:2.3:o:linux:linux_kernel:6.0.4
-
cpe:2.3:o:linux:linux_kernel:6.0.5
-
cpe:2.3:o:linux:linux_kernel:6.0.6
-
cpe:2.3:o:linux:linux_kernel:6.0.7
-
cpe:2.3:o:linux:linux_kernel:6.0.8
-
cpe:2.3:o:linux:linux_kernel:6.0.9
-
cpe:2.3:o:linux:linux_kernel:6.1
-
cpe:2.3:o:linux:linux_kernel:6.1.0
-
cpe:2.3:o:linux:linux_kernel:6.1.1
-
cpe:2.3:o:linux:linux_kernel:6.1.10
-
cpe:2.3:o:linux:linux_kernel:6.1.11
-
cpe:2.3:o:linux:linux_kernel:6.1.12
-
cpe:2.3:o:linux:linux_kernel:6.1.13
-
cpe:2.3:o:linux:linux_kernel:6.1.14
-
cpe:2.3:o:linux:linux_kernel:6.1.15
-
cpe:2.3:o:linux:linux_kernel:6.1.16
-
cpe:2.3:o:linux:linux_kernel:6.1.17
-
cpe:2.3:o:linux:linux_kernel:6.1.18
-
cpe:2.3:o:linux:linux_kernel:6.1.19
-
cpe:2.3:o:linux:linux_kernel:6.1.2
-
cpe:2.3:o:linux:linux_kernel:6.1.20
-
cpe:2.3:o:linux:linux_kernel:6.1.21
-
cpe:2.3:o:linux:linux_kernel:6.1.3
-
cpe:2.3:o:linux:linux_kernel:6.1.4
-
cpe:2.3:o:linux:linux_kernel:6.1.5
-
cpe:2.3:o:linux:linux_kernel:6.1.6
-
cpe:2.3:o:linux:linux_kernel:6.1.7
-
cpe:2.3:o:linux:linux_kernel:6.1.8
-
cpe:2.3:o:linux:linux_kernel:6.1.9
-
cpe:2.3:o:linux:linux_kernel:6.2
-
cpe:2.3:o:linux:linux_kernel:6.2.0
-
cpe:2.3:o:linux:linux_kernel:6.2.1
-
cpe:2.3:o:linux:linux_kernel:6.2.2
-
cpe:2.3:o:linux:linux_kernel:6.2.3
-
cpe:2.3:o:linux:linux_kernel:6.2.4
-
cpe:2.3:o:linux:linux_kernel:6.2.5
-
cpe:2.3:o:linux:linux_kernel:6.2.6
-
cpe:2.3:o:linux:linux_kernel:6.2.7
-
cpe:2.3:o:linux:linux_kernel:6.2.8
-
cpe:2.3:o:linux:linux_kernel:6.3