On 1/22/06, Petr SmolĂk <[EMAIL PROTECTED]> wrote: > > George Doukas wrote: > > So lets forget LXRT... > > I'm trying to use ORTE from kernel space, thus orte_rt.o and > > ortemanager_rt.o modules must be loaded. > > > > Even though I use the parameter rtskb_cache_size=64 when loading > > rtnet.o, the system freezes when I try to load ortemanager_rt.o. Why? > > > > I'm using... > > RTAI 3.1 over linux 2.4.26 kernel (adeos patched) > > RTnet 0.8.3 > > ORTE 0.3.1 > > (I've also tried RTAI 3.1 with RTnet 0.8.2 and ORTE 0.3.0) > > > > My test system consists of two P4 machines with the above > > configuration on a dedicated ethernet network. > > On both nodes I issue the following commands: > > > > insmod /usr/realtime/modules/rtai_hal.o > > insmod /usr/realtime/modules/rtai_ksched.o > > insmod /usr/realtime/modules/rtai_lxrt.o > > insmod /usr/realtime/modules/rtai_sem.o > > insmod /usr/realtime/modules/rtai_mbx.o > > > > rmmod 8139too (or eepro100 for the other node) > > insmod /usr/local/rtnet/modules/rtai_rtdm.o > > /usr/local/rtnet/sbin/rtnet start > > > > I've edited rtnet script so that rtnet.o is loaded with the > > appropriate parameter like this: > > insmod $RTNET_MOD/rtnet$MODULE_EXT rtskb_cache_size=64 >/dev/null || exit 1 > > > > (At this point rtping works just fine) > > > And finally... > > insmod > > /usr/local/orte/lib/modules/2.4.26-adeos/orte/orte_rt.o > > insmod > > /usr/local/orte/lib/modules/2.4.26-adeos/orte/ortemanager_rt.o > > THE SYSTEM FREEZES (on any node) !!! > > Are you using localback interface (rt_loopback.o)? > > this is my script for testing ORTE. It was tested long time ago. I am not > sure, if all is actually correct against RTAI & RTNet. > insmod rtai_hal.o > insmod rtai_up.o > insmod rtai_sem.o > > insmod rtai_rtdm.o > insmod rtnet.o rtskb_cache_size=128 > insmod rtnet.o > insmod rtcfg.o > insmod rt_loopback.o > insmod 8139too-rt.o > #insmod rtmac.o > #insmod tdma.o > rtifconfig rtlo up 127.0.0.1 > #rtifconfig rteth0 up 147.32.86.71 > > insmod orte_rt.ko > insmod ortemanager_rt.ko > > For first testing is not necessary to be running any network interface. Try > to test the correct behavior with localhost interface (127.0.0.1). > > When the code freezes, try to locate the point failure. When you insert > ortemanger_rt module, use parameter "verbosity" to enable some logs. > insmod ortemanager_rt.ko verbosity="ALL.10". > First step at the location should be disabled function ORTEDomainStart at > the ortemanager.c (No thread will be started). After that see correct > behavior function ORTEDomainMgrCreate(...). ... > > > Regards > Petr >
OK I've changed my rtai-rtnet-orte startup script! Now I don't load lxrt module, I don't make use of rtnet script and I only setup loopback interface.... my script looks like this: insmod $RTAI_PATH/modules/rtai_hal.o insmod $RTAI_PATH/modules/rtai_up.o # insmod $RTAI_PATH/modules/rtai_lxrt.o insmod $RTAI_PATH/modules/rtai_sem.o insmod $RTAI_PATH/modules/rtai_mbx.o insmod $RTAI_PATH/modules/rtai_shm.o ifconfig eth0 down rmmod eepro100 insmod $RTNET_PATH/modules/rtai_rtdm.o insmod $RTNET_PATH/modules/rtnet.o rtskb_cache_size=128 insmod $RTNET_PATH/modules/rtcfg.o insmod $RTNET_PATH/modules/rt_loopback.o rtifconfig rtlo up 127.0.0.1 insmod $ORTE_PATH/lib/modules/2.4.26-adeos/orte/orte_rt.o insmod $ORTE_PATH/lib/modules/2.4.26-adeos/orte/ortemanager_rt.o verbosity="ALL.10" Ortemanager load without problems and everything seems to work just fine (dmesg shows no errors). But when I try to load the h_subscriber.o and h_publisher.o (orte hello example) the modules never manage to initialize correctly an I get the following error: RTnet: rtskb allocation from real-time cache failed RTnet: rtskb allocation from real-time cache failed Default Trap Handler: vector 14: Suspend RT task cb3b4040 I found out the a similar broblem is reported by Kai Moritz (also CCed) in rtnet-user mailing list but no solution was provided (Kai if you found a solution please help). As Kai did, I also tracked down the error to ORTEDomainAppCreate function. Here what I get from dmesg (I've added some comments in the form +++ Comment...): Adeos: Domain RTAI registered. RTAI[hal]: 3.1 mounted over Adeos 2.4r16/x86. RTAI[hal]: compiled with gcc version 3.3.5. RTAI[malloc]: loaded (global heap size=131072 bytes). RTAI[sched_up]: loaded. RTAI[sched_up]: fpu=yes, timer=periodic. RTAI[sched_up]: standard tick=100 hz, CPU freq=3006901000 hz. RTAI[sched_up]: timer setup=2010 ns, resched latency=2689 ns. ***** WARNING: GLOBAL HEAP NEITHER SHARABLE NOR USABLE FROM USER SPACE (use the vmalloc option for RTAI malloc) ***** +++ At this point RTAI modules finished loading eth0: network connection down RTDM Version 0.6.0 *** RTnet 0.8.3 - built on Jan 20 2006 19:55:02 *** RTnet: initialising real-time networking RTnet: stack-mgr started RTDM: registered protocol device 2:2 RTDM: registered protocol device 17:2 RTcfg: init real-time configuration distribution protocol initializing loopback... RTnet: registered rtlo +++ At this point RTnet modules finished loading 4455.802 | ORTEDomainMgrCreate: start 4455.802 | ORTEDomainCreate: orte 0.3.1 compiled: Jan 20 2006,20:00:18 4455.802 | ORTEDomainCreate: start 4455.802 | ORTEDomainCreate: no active interface card 4455.802 | ORTEDomainCreate: bind on port(RecvUnicastMetatraffic): 7400 4455.802 | ORTEDomainCreate: bind on port(Send): 2048 4455.802 | ORTEDomainCreate: GUID: 0x7f000001,0x00080002,0x000001c1 4455.802 | objectEntry: start 4455.802 | objectEntry: Host : 0x7f000001 created 4455.802 | objectEntry: App : 0x00080002 created 4455.802 | objectEntry: Object: 0x000001c1 connected to AID 4455.802 | objectEntry: Object: 0x000001c1 created 4455.802 | objectEntry: finished 4455.802 | CSTWriterInit: start 4455.802 | CSTWriterRefreshTimer: start 4455.802 | eventDetach: AID 0x80002 4455.802 | eventDetach: finished 4455.802 | eventAdd: AID 0x80002 CSTWriterRefreshTimer 4455.802 | htimerUnicastCommon: root updated, wakeup 4455.802 | WakeUpSendingThread : start 4455.802 | WakeUpSendingThread : send wakeup signal 4455.802 | eventAdd: finished 4455.802 | CSTWriterRefreshTimer: finished 4455.802 | CSTWriterInit: 0x7f000001-0x80002-0x8c2 4455.802 | CSTWriterInit: finished 4455.802 | CSTReaderInit: start 4455.802 | CSTReaderInit: 0x7f000001-0x80002-0x7c7 4455.802 | CSTReaderInit: finished 4455.802 | CSTReaderInit: start 4455.802 | CSTReaderInit: 0x7f000001-0x80002-0x1c7 4455.802 | CSTReaderInit: finished 4455.802 | CSTWriterInit: start 4455.802 | CSTWriterInit: 0x7f000001-0x80002-0x1c2 4455.802 | CSTWriterInit: finished 4455.802 | CSTWriterInit: start 4455.802 | CSTWriterRefreshTimer: start 4455.802 | eventDetach: AID 0x80002 4455.802 | eventDetach: finished 4455.802 | eventAdd: AID 0x80002 CSTWriterRefreshTimer 4455.802 | eventAdd: finished 4455.802 | CSTWriterRefreshTimer: finished 4455.802 | CSTWriterInit: 0x7f000001-0x80002-0x7c2 4455.802 | CSTWriterInit: finished 4455.802 | CSTWriterAddCSChange: cstWriter:0x7f000001-0x80002-0x8c2 4455.802 | CSTWriterAddCSChange: sn:0x1 4455.802 | CSTWriterAddCSChange: finished 4455.802 | ORTEDomainCreate: finished 4455.802 | ORTEDomainMgrCreate: finished 4455.802 | ORTEAppRecvThread UM: start 4455.802 | ORTEAppRecvThread UM: receiving 4455.802 | ORTEAppSendThread: start 4455.802 | ORTEAppSendThread: sleeping for 72s 0ms 4455.802 | ORTEAppSendThread: fired 4455.802 | htimerRoot: start 4455.802 | htimerRoot: finished 4455.802 | ORTEAppSendThread: sleeping for 72s 0ms +++ At this point orte_rt.o and ortemanager_rt.o have been loaded.... +++ And I try try to load h_subscriber.o (using verbosity="ALL.10") 4527.802 | ORTEAppSendThread: fired 4527.802 | htimerRoot: start 4527.802 | htimerRoot: AID-0x80002 4527.802 | htimerUnicastCommon: CSTWriterRefreshTimer 4527.802 | CSTWriterRefreshTimer: start 4527.802 | eventDetach: AID 0x80002 4527.802 | htimerUnicastCommon: root updated, wakeup 4527.802 | WakeUpSendingThread : start 4527.802 | eventDetach: finished 4527.802 | eventAdd: AID 0x80002 CSTWriterRefreshTimer 4527.802 | eventAdd: finished 4527.802 | CSTWriterRefreshTimer: finished 4527.802 | htimerRoot: finished 4527.802 | ORTEAppSendThread: sleeping for 0s 0ms 4527.802 | ORTEAppSendThread: fired 4527.802 | htimerRoot: start 4527.802 | htimerRoot: AID-0x80002 4527.802 | htimerUnicastCommon: CSTWriterRefreshTimer 4527.802 | CSTWriterRefreshTimer: start 4527.802 | eventDetach: AID 0x80002 4527.802 | htimerUnicastCommon: root updated, wakeup 4527.802 | WakeUpSendingThread : start 4527.802 | eventDetach: finished 4527.802 | eventAdd: AID 0x80002 CSTWriterRefreshTimer 4527.802 | eventAdd: finished 4527.802 | CSTWriterRefreshTimer: finished 4527.802 | htimerRoot: finished 4527.802 | ORTEAppSendThread: sleeping for 72s 0ms RTnet: rtskb allocation from real-time cache failed RTnet: rtskb allocation from real-time cache failed Default Trap Handler: vector 14: Suspend RT task cd6d4040 Now h_subscriber module never leaves initializing state. The thread creaded inside init_module function of h_subscriber that runs domainInit is never joined. What's going on? Let me remind you that I'm using rtai-3.1, rtnet-0.8.3 and orte-0.3.1. Thanks in advance... George ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid3432&bid#0486&dat1642 _______________________________________________ RTnet-users mailing list RTnet-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rtnet-users