All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bill Vareka <bill@vareka.com>
To: xenomai@xenomai.org
Subject: [Xenomai] Problem with MALLOC_CHECK_
Date: Fri, 07 Sep 2012 00:26:42 -0500	[thread overview]
Message-ID: <50498592.3090204@vareka.com> (raw)

   We've discovered a weird problem.  Basically, when using the xenomai 
posix skin and allocating and releasing large amounts of memory in a 
secondary mode thread, the application corrupts the entire system 
(kernel and all) *if* the MALLOC_CHECK_ macro is disabled.  Attached is 
a simple c++ demo program showing this problem (compile with gcc).  If 
you compile using standard posix it works no matter what.  If you 
compile using the xenomai posix skin, then if the environment variable 
MALLOC_CHECK_=3 then the program runs fine with no problems.  However, 
if you run with MALLOC_CHECK_=0 then the program appears to corrupt 
system memory.   After running this program, less, cat, and other 
standard programs now segfault and won't run.  Also in our case, we see 
that the output of ifconfig is also corrupted (shows table data rather 
than normal format).  The kernel is completely unstable.
We have encountered the problem before without identifying the source.  
Currently this affected us because our application ran fine under a 
login shell when testing (since it automatically defined the env var) 
but when we added a launch script to sysVinit to automatically launch it 
at startup, it failed because the environmental variables were much 
different there and did not define this variable.

Again, our app is C++ and this test is with stl strings but I strongly 
suspect the same behavior can be generated using a standard C program 
and malloc/free.

Our setup:

architecture x86 32-bit
Linux 2.6.38.8
adeos ipipe 2.11-01
xenomai-2.6.1
gcc46-4.6.2_20111026-1.1.4.i586
libstdc++46-4.6.2_20111026-1.1.4.i586
glibc-2.14.1-14.12.2.i686

Regards,
Bill Vareka
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: memtst.cpp
URL: <http://www.xenomai.org/pipermail/xenomai/attachments/20120907/ad3c81c5/attachment.ksh>

             reply	other threads:[~2012-09-07  5:26 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-07  5:26 Bill Vareka [this message]
2012-09-07  5:55 ` [Xenomai] Problem with MALLOC_CHECK_ Gilles Chanteperdrix
  -- strict thread matches above, loose matches on Subject: below --
2012-09-11 16:45 Jeff Weber
2012-09-12 20:59 ` Gilles Chanteperdrix

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50498592.3090204@vareka.com \
    --to=bill@vareka.com \
    --cc=xenomai@xenomai.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.