aboutsummaryrefslogtreecommitdiff
path: root/kern/processor.c
diff options
context:
space:
mode:
authorDamien Zammit <damien@zamaudio.com>2024-02-22 08:24:39 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2024-02-22 09:43:10 +0100
commit2981d798351958d2c153bd3cb3c00cc2ebc9f27c (patch)
tree2bd39146f36c09c14b1987a5d91f69be57c09d25 /kern/processor.c
parent13b2f36d85756df7088be24acdcf847944b6b9ef (diff)
downloadgnumach-2981d798351958d2c153bd3cb3c00cc2ebc9f27c.tar.gz
gnumach-2981d798351958d2c153bd3cb3c00cc2ebc9f27c.tar.bz2
gnumach-2981d798351958d2c153bd3cb3c00cc2ebc9f27c.zip
kern/gsync: Use vm_map_lookup with keep_map_locked
This prevents a deadlock in smp where a read lock on the map is taken in gsync and then the map is locked again inside vm_map_lookup() but another thread had a pre-existing write lock, therefore the second read lock blocks. This is fixed by removing the initial gsync read lock on the map but keeping the read lock held upon returning from vm_map_lookup(). Co-Authored-By: Sergey Bugaev <bugaevc@gmail.com> Message-ID: <20240222082410.422869-4-damien@zamaudio.com>
Diffstat (limited to 'kern/processor.c')
0 files changed, 0 insertions, 0 deletions