[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v2 05/11] tcg: protect TBContext with tb_lock.
From: |
Sergey Fedorov |
Subject: |
Re: [Qemu-devel] [RFC v2 05/11] tcg: protect TBContext with tb_lock. |
Date: |
Wed, 11 May 2016 16:42:10 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 |
On 11/05/16 15:52, Paolo Bonzini wrote:
> Just a couple answers/remarks.
>
> On 11/05/2016 14:45, Sergey Fedorov wrote:
(snip)
>>> @@ -1350,6 +1352,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t
>>> start, tb_page_addr_t end,
>>> /* we remove all the TBs in the range [start, end[ */
>>> /* XXX: see if in some cases it could be faster to invalidate all
>>> the code */
>>> + tb_lock();
>> Don't we need also protect a call to page_find() above? page_find()
>> calls page_find_alloc() which is noted to be called with 'tb_lock' held.
> Only if alloc=1; page_find calls it with alloc=0.
Year, right :)
>> However, it might depend on the way we treat 'mmap_lock' in system mode
>> emulation.
> It's just not there; generally speaking it's replaced with tb_lock.
So why do we need yet another lock, 'mmap_lock', for user-mode emulation
and don't need it for system mode?
Kind regards,
Sergey