Re: [Xenomai-help] binding to memory heap from user space

2006-02-20 Thread Gilles Chanteperdrix
Cedric Herreman wrote:
  Hello,
   
   I have created a memory heap in the init_module routine of a kernel module 
  : 
   
  rt_heap_create(heap_data,RT_LOG_HEAP,sizeof(ttv_log_data),H_FIFO|H_SHARED);
   and 
   rt_heap_alloc(heap_data,0,TM_NONBLOCK,loc_ptr);
   Both calls return succesful.
   
   When i try to bind to this memory in an user space application :
   rt_heap_bind(rt_heap,RT_LOG_HEAP,TM_NONBLOCK);
   the call returns with error -2, this error does not seem to be documented 
  (i test on all the constants defined in the html API docs, xenomai v2.0).
   
   Can anyone give me a hint on what's wrong here ?

-2 is -ENOENT, no such file or directory.

You are probably missing the /dev/rtheap file. In order to create it,
run make devices with root privileges.

-- 


Gilles Chanteperdrix.

___
Xenomai-help mailing list
Xenomai-help@gna.org
https://mail.gna.org/listinfo/xenomai-help


Re: [Xenomai-help] binding to memory heap from user space

2006-02-20 Thread Cedric Herreman
Gilles Chanteperdrix [EMAIL PROTECTED] wrote: Cedric Herreman wrote:  Hello,  I have created a memory heap in the init_module routine of a kernel module :rt_heap_create(heap_data,"RT_LOG_HEAP",sizeof(ttv_log_data),H_FIFO|H_SHARED);   andrt_heap_alloc(heap_data,0,TM_NONBLOCK,loc_ptr);   Both calls return succesful.  When i try to bind to this memory in an user space application :   rt_heap_bind(rt_heap,"RT_LOG_HEAP",TM_NONBLOCK);  the call returns with error -2, this error does not seem to be documented (i test on all the constants defined in the html API docs, xenomai v2.0).  Can anyone give me a hint on what's wrong here ?-2 is -ENOENT, no such file or directory.You are probably
 missing the /dev/rtheap file. In order to create it,run "make devices" with root privileges. Gilles Chanteperdrix.Yes, i was. I added the file on the target system (doesn't have the src tree, so i can't "run make devices") like this : mknod /dev/rtheap b 1 0  Now, it is giving me the error : -EPERM. The doc says the call is made from a context that cannot sleep (interrupt, non-realtime, scheduler locked). Is it not possible to link to shared mem from a non-realtime userspace application in this way ?  Cedric.
		Brings words and photos together (easily) with 
PhotoMail  - it's free and works with Yahoo! Mail.___
Xenomai-help mailing list
Xenomai-help@gna.org
https://mail.gna.org/listinfo/xenomai-help


Re: [Xenomai-help] binding to memory heap from user space

2006-02-20 Thread Cedric Herreman
Gilles Chanteperdrix [EMAIL PROTECTED] wrote: Cedric Herreman wrote:  Hello,  I have created a memory heap in the init_module routine of a kernel module :rt_heap_create(heap_data,"RT_LOG_HEAP",sizeof(ttv_log_data),H_FIFO|H_SHARED);   andrt_heap_alloc(heap_data,0,TM_NONBLOCK,loc_ptr);   Both calls return succesful.  When i try to bind to this memory in an user space application :   rt_heap_bind(rt_heap,"RT_LOG_HEAP",TM_NONBLOCK);  the call returns with error -2, this error does not seem to be documented (i test on all the constants defined in the html API docs, xenomai v2.0).  Can anyone give me a hint on what's wrong here ?-2 is -ENOENT, no such file or directory.You are probably
 missing the /dev/rtheap file. In order to create it,run "make devices" with root privileges. Gilles Chanteperdrix.Yes, i was. I added the file on the target system (doesn't have the src tree, so i can't "run make devices") like this : mknod /dev/rtheap b 1 0  Now, it is giving me the error : -EPERM. The doc says the call is made from a context that cannot sleep (interrupt, non-realtime, scheduler locked). Is it not possible to link to shared mem from a non-realtime userspace application in this way ?  Cedric.
		Brings words and photos together (easily) with 
PhotoMail  - it's free and works with Yahoo! Mail.

Re: [Xenomai-help] binding to memory heap from user space

2006-02-20 Thread Philippe Gerum

Cedric Herreman wrote:

*/Gilles Chanteperdrix [EMAIL PROTECTED]/* wrote:

Cedric Herreman wrote:
  Hello,
 
  I have created a memory heap in the init_module routine of a
kernel module :
 

rt_heap_create(heap_data,RT_LOG_HEAP,sizeof(ttv_log_data),H_FIFO|H_SHARED);
  and
  rt_heap_alloc(heap_data,0,TM_NONBLOCK,loc_ptr);
  Both calls return succesful.
 
  When i try to bind to this memory in an user space application :
  rt_heap_bind(rt_heap,RT_LOG_HEAP,TM_NONBLOCK);
  the call returns with error -2, this error does not seem to be
documented (i test on all the constants defined in the html API
docs, xenomai v2.0).
 
  Can anyone give me a hint on what's wrong here ?

-2 is -ENOENT, no such file or directory.

You are probably missing the /dev/rtheap file. In order to create it,
run make devices with root privileges.

Gilles Chanteperdrix.

Yes, i was. I added the file on the target system (doesn't have the src 
tree, so i can't run make devices)  like this :

mknod /dev/rtheap b 1 0


mknod /dev/rtheap c 10 254



Now, it is giving me the error : -EPERM. The doc says the call is made 
from a context that cannot sleep (interrupt, non-realtime, scheduler 
locked). Is it not possible to link to shared mem from a non-realtime 
userspace application in this way ?


Cedric.


Brings words and photos together (easily) with
PhotoMail 
http://us.rd.yahoo.com/mail_us/taglines/PMall/*http://photomail.mail.yahoo.com 
- it's free and works with Yahoo! Mail.





___
Xenomai-help mailing list
Xenomai-help@gna.org
https://mail.gna.org/listinfo/xenomai-help



--

Philippe.