Hi,
On Thu Jul 24, 2014 at 17:41:14 -0400, Yuxin Ren wrote:
That happens during IPC loop. I am pretty there is no migration during my IPC. However the helping lock will cause migration, right? Bur I do not think this will happen in my case. Do you think something can delay the dequeue operation so that the __pending_rqq is still in the queue when next request happens? Because after I add some delay in the IPC path (add printf somewhere), the number of IPIs is exactly 4 for flex-page mapping IPC, and 2 for simple data-only IPC.
The printfs incredible slow down the IPCs so I'm not sure this tells us something. Are you sure that your IPC loops run at the highest prio (so that nothing else can run) and they are static, i.e. no memory allocation, no creation/destruction of anything, no other syscall? The request you see in there, which request is it? There's a function attached to each request, is it IPC related?
Adam