Commit f0eb154
irqchip/gic-v4: Substitute vmovp_lock for a per-VM lock
vmovp_lock is abused in a number of cases to serialise updates
to vlpi_count[] and deal with map/unmap of a VM to ITSs.
Instead, provide a per-VM lock and revisit the use of vlpi_count[]
so that it is always wrapped in this per-VM vmapp_lock.
This reduces the potential contention on a concurrent VMOVP command,
and paves the way for subsequent VPE locking that holding vmovp_lock
actively prevents due to the lock ordering.
Signed-off-by: Marc Zyngier <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
Tested-by: Nianyao Tang <[email protected]>
Link: https://lore.kernel.org/r/[email protected]1 parent 7d2c204 commit f0eb154
File tree
2 files changed
+20
-15
lines changed- drivers/irqchip
- include/linux/irqchip
2 files changed
+20
-15
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1317 | 1317 | | |
1318 | 1318 | | |
1319 | 1319 | | |
1320 | | - | |
1321 | 1320 | | |
1322 | 1321 | | |
1323 | 1322 | | |
| |||
1329 | 1328 | | |
1330 | 1329 | | |
1331 | 1330 | | |
| 1331 | + | |
| 1332 | + | |
| 1333 | + | |
| 1334 | + | |
| 1335 | + | |
| 1336 | + | |
1332 | 1337 | | |
1333 | 1338 | | |
1334 | 1339 | | |
| |||
1337 | 1342 | | |
1338 | 1343 | | |
1339 | 1344 | | |
1340 | | - | |
1341 | | - | |
| 1345 | + | |
1342 | 1346 | | |
1343 | 1347 | | |
1344 | 1348 | | |
| |||
1353 | 1357 | | |
1354 | 1358 | | |
1355 | 1359 | | |
1356 | | - | |
1357 | | - | |
1358 | 1360 | | |
1359 | 1361 | | |
1360 | 1362 | | |
| |||
1791 | 1793 | | |
1792 | 1794 | | |
1793 | 1795 | | |
1794 | | - | |
1795 | | - | |
1796 | 1796 | | |
1797 | 1797 | | |
1798 | 1798 | | |
1799 | | - | |
| 1799 | + | |
1800 | 1800 | | |
1801 | 1801 | | |
1802 | 1802 | | |
| |||
1814 | 1814 | | |
1815 | 1815 | | |
1816 | 1816 | | |
1817 | | - | |
1818 | | - | |
1819 | 1817 | | |
1820 | 1818 | | |
1821 | 1819 | | |
1822 | 1820 | | |
1823 | | - | |
1824 | | - | |
1825 | 1821 | | |
1826 | 1822 | | |
1827 | 1823 | | |
1828 | 1824 | | |
1829 | | - | |
| 1825 | + | |
1830 | 1826 | | |
1831 | 1827 | | |
1832 | 1828 | | |
1833 | 1829 | | |
1834 | 1830 | | |
1835 | 1831 | | |
1836 | 1832 | | |
1837 | | - | |
1838 | | - | |
1839 | 1833 | | |
1840 | 1834 | | |
1841 | 1835 | | |
| |||
3942 | 3936 | | |
3943 | 3937 | | |
3944 | 3938 | | |
| 3939 | + | |
| 3940 | + | |
3945 | 3941 | | |
3946 | 3942 | | |
3947 | 3943 | | |
| |||
4547 | 4543 | | |
4548 | 4544 | | |
4549 | 4545 | | |
| 4546 | + | |
4550 | 4547 | | |
4551 | 4548 | | |
4552 | 4549 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
28 | 36 | | |
29 | 37 | | |
30 | 38 | | |
| |||
0 commit comments