At 07:08 AM 8/31/99 -0700, Estabridis, Janet P wrote:

 >I have gotten shared memory to work on this machine but my shared memory
 >block size was small, about 700 bytes to test out my code.  Now I was ready
 >to increase it and I get a Segmenation Fault when I /sbin/insmod my rt
 >process....

My experiences may help:

I am doing DMA transfers from a PCI card directly to shared RAM while 
within an RT module. Also while in the module, I write a couple of 
locations in shared-RAM directly.

At first, I was doing this with a 1MB shared-RAM area and all this seemed 
to work. But I got core dumps when I changed the shared-RAM size to 4MB!

Cause: I was following the shared-memory FAQ which didn't mention the need 
to use vremap(). Once I did the vremap() call before touching shared-RAM, 
my problems went away. I guess that when I was using the 1 MB area, I was 
simply lucky.

So: I can apparently DMA to shared-RAM without performing a vremap() 
because the transfer occurs outside the CPU. But programmed reads/writes 
must be done using a mapped pointer.

Hoping this helps,

Marshall Jose, WA3VPZ
Johns Hopkins Univ. Applied Physics Lab., 240-228-4367
| "It could have been an organically based disturbance of the brain -- |
| perhaps a tumor or a metabolic deficiency -- but after a thorough    |
| neurological exam it was determined that Byron was simply a jerk."   |
| -- Jeff Jahnke, runner-up, 7th Annual Bulwer-Lytton Contest.         |

--- [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/~rtlinux/

Reply via email to