Topic
IC4NOTICE: developerWorks Community will be offline May 29-30, 2015 while we upgrade to the latest version of IBM Connections. For more information, read our upgrade FAQ.
3 replies Latest Post - ‏2012-10-31T22:00:47Z by SystemAdmin
SystemAdmin
SystemAdmin
2948 Posts
ACCEPTED ANSWER

Pinned topic Overlapping Memory Allocation for global data structures in C

‏2012-10-30T13:28:31Z |
Hi,

I am using "Purify 7.0.0.0-008 070813 Linux (32-bit)" on CentOS and facing a peculiar problem. However, no issues seen if Purify is not used.

I noticed that, two global data structures are allocated overlapping memory due to which SW crashes whenever it tries to access these data structures. We have verified the addresses & size of these data-structures using readelf utility & also by printing the values immediately after entering in the main function.

I further notice multiple such linker warnings. Not sure - if these warnings are linked with above issue. If yes, then how to resolve it? Note that, no such warnings are seen when Purify is not used.

/usr/bin/ld: Warning: alignment 4 of symbol `gtt_mtpsap_list' in /tmp/data18092common_defs0_pure_p9_c0_108130844_32.o is smaller than 32 in /home/omkar/trunk/lib/libnsn_sgw_sccp_pure_p9_c0_108130844_32.a(gt_glob.o

Request you to share your feedback on the same.

-Thanks & Rgds
Avadh
Updated on 2012-10-31T22:00:47Z at 2012-10-31T22:00:47Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    2948 Posts
    ACCEPTED ANSWER

    Re: Overlapping Memory Allocation for global data structures in C

    ‏2012-10-30T16:53:26Z  in response to SystemAdmin
    Hi Avadh,

    Purify 7.0.0.0-008 dates back to 2007 and likely does not work on the version
    of CentOS that you are using. See attached release notes for the version of
    Purify that you are using. Notice that your version of Purify only supports
    up to RHEL 5. (This would probably be equivalent to CentOS 5). Also, Purify
    7.0.0.0-008 only supports up to gcc/g++ 4.2.

    What OS version and compiler are you using?
    Don
    • SystemAdmin
      SystemAdmin
      2948 Posts
      ACCEPTED ANSWER

      Re: Overlapping Memory Allocation for global data structures in C

      ‏2012-10-31T07:13:23Z  in response to SystemAdmin
      Hi Don,

      OS/compiler/Kernel versions from the machine is provided below:

      Linux version: CentOS release 5.5 (Final)
      GCC version: gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)
      Kernel version: 2.6.18-194.el5xen

      We checked the document provided by you and as per it
      - Supported version for gcc is 4.2 (gcc version at my m/c is an earlier one)
      - RHEL 5 supported (As my m/c hosts centOS 5.5 - so this should be fine)

      So, do you suspect gcc version to be an issue?

      -Thanks & Rgds
      Avadh
      • SystemAdmin
        SystemAdmin
        2948 Posts
        ACCEPTED ANSWER

        Re: Overlapping Memory Allocation for global data structures in C

        ‏2012-10-31T22:00:47Z  in response to SystemAdmin
        Hi Avadh,

        You will need to use PurifyPlus 7.0.1.0-002 (released 10/12/10) or
        higher on Red Hat Enterprise Linux 5.5 (and/or CentOS 5.5). Older
        releases will not work on RHEL/CentOS 5.5.

        Best regards,
        Don