All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai] Segfaults and ENOMEM during rt_event_create()
@ 2015-08-05 13:09 Charles Kiorpes
  2015-08-05 15:42 ` Philippe Gerum
  0 siblings, 1 reply; 23+ messages in thread
From: Charles Kiorpes @ 2015-08-05 13:09 UTC (permalink / raw)
  To: xenomai

Hello,

I am trying to port a fairly large application from Xenomai 2.6.4 to
Xenomai 3.0-rc6

Most of the port has been decently painless, but there is one issue I
can't seem to get past.

I am consistently getting ENOMEM errors and segfaults in
libcopperplate.so during rt_event_create(), and always at the same
spot in my application.

If a segfault occurrs, the dmesg output from the segfault looks like this:
[   235.422300] PortProcess[1502]: segfault at f1b3ebeb ip b76c14b7 sp
bfeae498 error 5 in libcopperplate.so.0.0.0[b76b7000+14000]

The application uses a large number of named event flag groups.  At
the time that the error occurs, it is looping to create 32 new named
event groups.

I have increased these values in my kernel config:
CONFIG_XENO_OPT_REGISTRY_NRSLOTS=4096
CONFIG_XENO_OPT_SYS_HEAPSZ=512
CONFIG_XENO_OPT_PRIVATE_HEAPSZ=128
CONFIG_XENO_OPT_SHARED_HEAPSZ=128

When I dig through the /proc/xenomai filesystem, I see that:
- I am only using 383/4096 registry slots
- My system heap is about half full (284160KB free of 524288KB)
- My shared and private heaps are basically empty

My application is launched with --mem-pool-size=400000.  The main heap
(in /registry/user/session/system) has about 220KB used at the point
that the error occurs.
Increasing the mem-pool-size does not change the behavior.  I have
also tried further increasing the values of my system (1024), private
(256), and shared (256) heapsizes, with no effect.

Obviously I've missed something, but I can't figure out where the
error is occurring.

System details:
OS: Debian Jessie 32-bit
Kernel: 3.18.12 - patched using Xenomai 3.0-rc6
System: Intel Xeon W3503 (x86 architecture)
I-Pipe version 1

Thanks for your help!

- Charles Kiorpes


^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2015-08-13 16:21 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-05 13:09 [Xenomai] Segfaults and ENOMEM during rt_event_create() Charles Kiorpes
2015-08-05 15:42 ` Philippe Gerum
2015-08-05 16:34   ` Charles Kiorpes
2015-08-06  7:42     ` Philippe Gerum
2015-08-05 17:24   ` Gilles Chanteperdrix
2015-08-06  7:40     ` Philippe Gerum
2015-08-06  7:49       ` Gilles Chanteperdrix
2015-08-06  8:00         ` Philippe Gerum
2015-08-06  9:25           ` dietmar.schindler
2015-08-06 15:12             ` Philippe Gerum
     [not found]   ` <CAHoW4hHS2QS1td6mUiWid-unDrMDZaQMo3vkYsDynNze5YsaSw@mail.gmail.com>
     [not found]     ` <55C326C5.4070608@xenomai.org>
2015-08-06 15:00       ` Charles Kiorpes
2015-08-06 15:23         ` Philippe Gerum
2015-08-06 15:26           ` Philippe Gerum
2015-08-10 13:52           ` Charles Kiorpes
2015-08-10 15:01             ` Philippe Gerum
2015-08-10 15:17               ` Charles Kiorpes
2015-08-10 15:40                 ` Philippe Gerum
2015-08-13 11:14                 ` Philippe Gerum
2015-08-13 11:39                   ` Charles Kiorpes
2015-08-13 16:21                     ` Philippe Gerum
2015-08-10 15:50             ` Philippe Gerum
2015-08-11 15:17             ` Philippe Gerum
2015-08-11 15:14         ` Philippe Gerum

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.