[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Help on TLB Flush

From: Mark Burton
Subject: [Qemu-devel] Help on TLB Flush
Date: Thu, 12 Feb 2015 15:35:39 +0100

TLB Flush:

We have spent a few days on this issue, and still haven’t resolved the best path.

Our solution seems to work, most of the time, but we still have some strange issues - so I want to check that what we are proposing has a chance of working.

Our plan is to allow all CPU’s to continue. Potentially one CPU will want to write to the TLBs. Subsequent to the write, it requests a TLB Flush. We are proposing to implement this by signalling all other CPU’s to exit (and requesting they flush before re-starting). In other words, this would happen asynchronously.

This means - there is a theoretical period of time when one CPU is writing to the TLBs while other CPU’s are executing.  Our belief is that this has to be handled by software anyway, and this should not be an issue from Qemu’s point of view. 
The alternative would be to force all other CPU’s to exit before writing the TLB’s - this is both expensive and very painful to organise (as we get into horrid deadlocks whichever way we turn)…

We’d appreciate some thoughts on this...



 +44 (0)20 7100 3485 x 210
 +33 (0)5 33 52 01 77x 210

+33 (0)603762104

reply via email to

[Prev in Thread] Current Thread [Next in Thread]