Philippe Gerum wrote:
> On Thu, 2010-06-03 at 16:22 +0200, Jan Kiszka wrote:
>> From: Jan Kiszka <[email protected]>
>>
>> Implement the x86 arch bits for ipipe_get_irq_regs support. This allows
>> to drop __ipipe_tick_regs and use the new service instead.
> 
> I'm unsure whether this patch would actually replace __ipipe_tick_regs
> properly, particularly regarding how the profiling code works.

tick_regs are a "workaround", this approach appears to me way closer to
how native works.

> 
> But I'm now convinced that we are on the wrong track, with trying to
> track the IRQ frame, for the purpose we discussed on the Xenomai mailing
> list. In fact, Gilles already told us about the best approach, we did
> not pay attention enough, though:
> https://mail.gna.org/public/xenomai-help/2010-06/msg00033.html
> 
> Basically, we want to get a hold of the register frame of a task context
> before it returns to user-space, so that we can do some fixups.
> Therefore, the best option is clearly to add a special event, that the
> pipeline would dispatch upon request, when:
> 
> - __ipipe_grab/handle_irq is about to return to userland
> - __ipipe_syscall_root is about to do the same
> 
> In those contexts, we do have the _real_ register frame for the context,
> which removes the restriction on faked IRQ frames induced by the
> deferred interrupt model.

The register frame is incomplete, but it is very real. It is what you
get when an interrupt fires right after the kernel re-enabled IRQ delivery.

> We could then use that feature, not only for
> having a more graceful watchdog, but for allowing Xenomai's real-time
> signals to preempt syscall-less code as well.
> 
> I worked on this lately, and eventually coupled that event to a
> generalized support for forcing userland to run a kernel exit. I'll post
> more info to the Xenomai list.

That said, I'm not opposed to some kind of "I-pipe user space return
notifiers", specifically as they will include the syscall path. Maybe we
can still save bits of this approach to overcome the tick_regs and
related patches of the profiling code.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main

Reply via email to