All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-help] Force switch back to primary domain
@ 2010-02-04 10:57 Tschaeche IT-Services
  2010-02-04 14:30 ` Gilles Chanteperdrix
  0 siblings, 1 reply; 23+ messages in thread
From: Tschaeche IT-Services @ 2010-02-04 10:57 UTC (permalink / raw)
  To: xenomai

Hi all,

my scenario is as follows:

- Xenomai 2.4.10, Linux 2.6.30.10
- rtdm-driver, defining ioctl_rt and ioctl_nrt
- user space task migrated with rt_task_shadow()
	to primary domain
- user space task is in a loop calling rt_dev_ioctl()

what happens:

as long as user space task does not switch to secondary domain
user space task comes into ioctl_rt of my driver, which
waits on an event with rtdm_event_wait() - fine :-)


but, when user space task gets a Linux signal (SIGTRAP
caused by breakpoint), user space task switches
to secondary domain executing the signal handler,
which returns after handling the signal - fine up to here.

then, i would like to switch back to primary domain using:

	rt_task_set_mode(0, T_PRIMARY, NULL);

which returns without error. but, when calling rt_dev_ioctl()
again, the non realtime version function of the driver ioctl_nrt
is called (where i can't use rtdm_event_wait()).

tried to rt_task_sleep(1000000000) and calling rt_task_set_mode() again, no success,
seems like user space thread is locked into secondary domain, why?

How can i force to switch a thread back into primary mode again?
	
Thanks for your help,

	Olli



^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2010-02-15 10:47 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-04 10:57 [Xenomai-help] Force switch back to primary domain Tschaeche IT-Services
2010-02-04 14:30 ` Gilles Chanteperdrix
2010-02-05 10:37   ` Tschaeche IT-Services
2010-02-05 11:19     ` Gilles Chanteperdrix
2010-02-05 11:50       ` Tschaeche IT-Services
2010-02-05 12:39       ` Henri Roosen
2010-02-05 13:34         ` Gilles Chanteperdrix
2010-02-05 14:38           ` Jan Kiszka
2010-02-05 15:27             ` Henri Roosen
2010-02-08 14:03               ` Gilles Chanteperdrix
2010-02-08 14:33                 ` Henri Roosen
2010-02-09 10:06                   ` Gilles Chanteperdrix
2010-02-09 10:09                     ` Jan Kiszka
2010-02-09 10:14                       ` Henri Roosen
2010-02-12 15:57                         ` Henri Roosen
2010-02-12 16:02                           ` Gilles Chanteperdrix
2010-02-12 17:16                             ` Gilles Chanteperdrix
2010-02-12 17:20                           ` Gilles Chanteperdrix
2010-02-15  9:07                             ` Henri Roosen
2010-02-15  9:35                               ` Jan Kiszka
2010-02-15  9:36                               ` Philippe Gerum
2010-02-15 10:33                                 ` Henri Roosen
2010-02-15 10:47                                   ` Philippe Gerum

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.