linux-c-programming.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Fawad Lateef <fawadlateef@gmail.com>
To: ern0 <ern0@linkbroker.hu>
Cc: linux-c-programming@vger.kernel.org
Subject: Re: Hi, Needs suggestions for finding and fixing stack/memory corruption when calling a function
Date: Tue, 24 May 2011 10:02:25 +0100	[thread overview]
Message-ID: <BANLkTi=C7H=NK65aT4m0Mw-ecy6v2Kx44A@mail.gmail.com> (raw)
In-Reply-To: <BANLkTimx+=DxYCCqtSKjGWUm63jBAe+iug@mail.gmail.com>

On Tue, May 24, 2011 at 7:08 AM, ern0 <ern0@linkbroker.hu> wrote:
> Sounds like wrong compilation. Have you recompiled both the caller and the
> callee functions? Is the compiling target set correctly (btw ARM integers
> are always put on 32-bit boundaries)? What are the types of the parameters?
> Try to change its order. Finally, if nothing works, pass them different way,
> one-by-one (setFirst(), setSecond(), SetThirdAndperform()) or with pointers,
> I mean foo(int*) instead of foo(int).
>

Thanks for reply and suggestions. Both functions are part of single
application and I tried rebuilding all of them again. For now I added
two more temporary arguments between 1st and 2nd arguments and the
required arguments getting correct values thats why I am assuming that
by adding temporary variables we moved the memory corruption from real
arguments into temporary arguments. After adding these arguments my
function is behaving correctly so for now this is a work-around _but_
I want to figure-out its proper fix (as the same sort of issue we
faced in our cgi based web-pages code some weeks earlier).

Hence I needs suggestion that is this really a memory corruption or
some compiler issues ? If its a compiler issue then its not a big
problem but if its memory corruption issue then we have to _fix_ it
asap.

My compilation arguments are:

* Compilation ----- armv5l-linux-g++ -Wall -Wno-write-strings
-mcpu=arm9 -Os -DARM9_LINUX_GCC -D_GNU_SOURCE -DUNIX -pipe -fPIC -c -o
xxxxxxxxxxx.o xxxxxxxxxxx.cc

* Linking Shared Library ----- armv5l-linux-g++ -shared -o xxxxxx.so

* Linking Executable ----- armv5l-linux-g++ -Wl,-rpath,/mnt/apps/lib
-Wall -Wno-write-strings -mcpu=arm9 -Os -DARM9_LINUX_GCC -D_GNU_SOURCE
-DUNIX -pipe -s ..........


Thanks,

Fawad Lateef


> On Mon, May 23, 2011 at 16:41, Fawad Lateef <fawadlateef@gmail.com> wrote:
>>
>> Hello,
>>
>> I need some suggestions about how-to approach, find and fix a memory
>> corruption issue which is happening in a C/C++ very complex and large
>> code (code evolved over several years). Code is running on AT91SAM9260
>> (armv5l architecture; single processor with preemption enabled) and
>> completely in Linux user-space.
>>
>> The problem is:
>>
>> -- We are calling a function which has three integer arguments.
>> With-in that function 2nd and 3rd arguments always gets corrupted
>> while 1st argument is fine. Just before calling that function printing
>> arguments is fine.
>>
>> Now it will be good if I can get some suggestions about whats
>> happening and how-to look into this problem. I am thinking that there
>> is some memory/stack corruption happening somewhere.
>>
>> Thanks in advance.
>>
>> -- Fawad Lateef
>> --
>> To unsubscribe from this list: send the line "unsubscribe
>> linux-c-programming" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
>
>
> --
> ern0
> Haben Sie Fragen?
>
--
To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2011-05-24  9:02 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <BANLkTingN-61wOzWKk7iwxFgo0W2YAzUQQ@mail.gmail.com>
2011-05-23 14:41 ` Hi, Needs suggestions for finding and fixing stack/memory corruption when calling a function Fawad Lateef
2011-05-23 14:45   ` Andrej Gelenberg
2011-05-23 14:59     ` Fawad Lateef
2011-05-24  8:29       ` Mahavir Jain
2011-05-23 14:59   ` Zhongye Jia
     [not found]   ` <BANLkTimx+=DxYCCqtSKjGWUm63jBAe+iug@mail.gmail.com>
2011-05-24  9:02     ` Fawad Lateef [this message]
2011-05-24 12:48       ` Glynn Clements
2011-05-24 15:33         ` Fawad Lateef
2011-05-25 11:07           ` Glynn Clements
2011-06-14 15:25             ` Fawad Lateef

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='BANLkTi=C7H=NK65aT4m0Mw-ecy6v2Kx44A@mail.gmail.com' \
    --to=fawadlateef@gmail.com \
    --cc=ern0@linkbroker.hu \
    --cc=linux-c-programming@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).