Hmmm. This should work. Although my understanding was that somehow using nanosleep() was supposed to be preferable to pthread_make_periodic_np. Oh well. :)
-Calin On Tue, 29 Jan 2002, Kristoffer Persson wrote: > Hi, > > Has anyone observed and solved the following? > > After some time (a few minutes to a few hours) of operation, the RT task I > am running stops without any message. If I rmmod and insmod it again, it > will run for about a seconds before it stops again. If I re-insert > rtl_sched and rtl_time and my module, it will run again for some time > (~min-hours) before stopping. > > My task is really simple, it only flips a bit on the parallel port. I have > tried task periods between 50us and 1ms and it appears to run longer the > longer the period. > > void *rtfunc( void *param ) > { > unsigned char value = 0; > unsigned char mask = 0x01; > > pthread_make_periodic_np( thread, gethrtime() + PERIOD, PERIOD); > > while ( 1 ) { > pthread_wait_np(); > rtl_outb( value, PORT ); > value ^= mask; // Toggle bit > } > > return 0; > > } /* rtfunc */ > > RTLinux 3.1, Linux 2.4.4, CPU AMD 5x86, gcc 2.96 (from RedHat 7.2). > > I found an earlier post about a similar problem with an older version of > RTLinux and the reply was that it had been fixed in the 3.0 release. > > Hope someone can help, this is getting a bit annoying. > > Kris > > > -- [rtl] --- > To unsubscribe: > echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR > echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED] > -- > For more information on Real-Time Linux see: > http://www.rtlinux.org/ > -- [rtl] --- To unsubscribe: echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED] -- For more information on Real-Time Linux see: http://www.rtlinux.org/