Umm... What's that mean? Would you please translate the mysterious acronym SMM.
TIA Norm ----- Original Message ----- From: <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, February 07, 2002 1:22 PM Subject: Re: [rtl] Long latency on laptop > Is all power saving and the horrible "speed step" disabled? > If so, you may be the victim of the dreaded SMM about which nothing > can be done. > > On Thu, Feb 07, 2002 at 12:14:47PM +0100, Linus Gasser wrote: > > Hi, > > I'm running a RH7.2 with a rtlinux 3.1 a linux-2.2.19 kernel on a DELL > > Latitude laptop. Data aquisition is done with a PCI-card which holds a 9080 > > from PLX technology. Data rate is about 14MSamples/s, which are transferred > > through DMA in 1KByte blocks (which equals to one "slot"). The loop that gets > > the data looks like this ( I tried to simplify it as much as possible without > > deleting stuff that is important...): > > > > void myLoop(){ > > rtl_setclockmode(CLOCK_RTL_SCHED, > > RTL_CLOCK_MODE_ONESHOT, > > 0); > > start_time = clock_gethrtime(CLOCK_RTL_SCHED)+ > > (hrtime_t)GPP_SLOT_TIME_NS; > > pthread_make_periodic_np(pthread_self(), > > start_time, > > 0); > > do { > > pthread_wait_np(); > > rtl_printf( "mailbox: %i\n", mbox_9080 ); > > > > [ lots of calculations ] > > > > offset = slot_count - mbox_9080; > > // mbox_9080 holds the number of DMA-blocks already written into > > // memory. > > > > start_time = clock_gethrtime(CLOCK_RTL_SCHED) + > > offset*BLOCK_TIME_NS; > > if (offset > 1) > > pthread_make_periodic_np(pthread_self(),start_time,0); > > else > > EXIT=1; > > > > slot_count++; > > } while (EXIT == 0); > > } > > > > Now: on a dual-pentium, this works real nice. No problem at all. The > > wakeup-time is always accurate to at least 50us (the time of a "slot"). But, > > as soon as I let it run on the laptop (single processor, 1GHz PIII), these > > wakeup-calls may be missed by as much as 10ms (yes, 200 "slots") once every > > 2-3 minutes. Of course my first reaction was to remove all APM-functions, > > then to compile the kernel non-SMP and then I let run a script in parallel, > > like > > > > while sleep 1; do date +%T >> log; cat /proc/loadavg >> log; ps ax | tail -n > > 10 | head -n 7 >> log; done > > > > So I could look at what happens. But there was nothing special. So I turned > > off all services I'm sure aren't in use, switched to runlevel 3 and tried > > again. Still no luck. Then I shut down the network and started the thing > > locally (before I did it over the network), still no luck. Threw away the > > graphical interface, no luck. > > Now I don't have any ideas left of what to do. I'm running in text-mode, > > runlevel 3, w/o all the bells and whistles, no network and it still crashes > > on me... runlevel s, shut down everything, ps ax yields: > > PID TTY STAT TIME COMMAND > > 1 ? S 0:05 init > > 2 ? SW 0:00 [kflushd] > > 3 ? SW 0:00 [kupdate] > > 4 ? SW 0:00 [kswapd] > > 5 ? SW 0:00 [keventd] > > 7254 tty3 S 0:00 init > > 7255 tty3 S 0:00 /bin/sh > > 7463 tty3 R 0:00 ps ax > > (no lines omitted...) and it still crashes... > > Does anyone have another idea? Everything that I can think of that > > interrupts my process I turned off. Do YOU have any idea of what to do? > > > > Greets > > > > ineiti > > -- [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/ > > -- > --------------------------------------------------------- > Victor Yodaiken > Finite State Machine Labs: The RTLinux Company. > www.fsmlabs.com www.rtlinux.com > > -- [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/