Re: Question about cross core IPC

Adam Lackorzynski <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.devel
Message-ID <[email protected]>
On Wed Jun 04, 2014 at 11:48:44 -0400, Yuxin Ren wrote:
> Thank you for your reply. But I think you misunderstand my questions.
> 
> First, my question is whether there is a lock.
> Are you sure there is no lock for sender_list?
> I think the data has to be manipulated by multiple context
> as we can send to the same receiver at the same time in different cores.
> Of course there may be not lock even for multicore, but I do not think only
> disable
> interrupt is enough.
> If there is no lock, I want to know how they do cross core synchronization
> without locks.

There's no lock as the list is only changed in the receivers context.

> Second, IPI operations are useful for me. But I also want to know the code
> on IPC
> path to use IPI. Can you tell me where is the code on IPC path to invoke
> IPI operations?

Please look for Ipi::send() calls in context.cpp and thread.cpp.
However, IPC uses a "remote request" functionality which in turn does
use IPIs.



Adam
-- 
Adam                 [email protected]
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.