Corey,

On Thu, Jan 8, 2009 at 2:16 AM, Corey J Ashford <cjash...@us.ibm.com> wrote:
> atomic_long_t is defined from atomic64_t which on power is defined as
> struct { long counter }.
>
> As an experiment, I tried changing perfmon_file.c to use atomic_long_read
> instead of atomic_read, and that fixed the problem.  Seeing how Power is a
> big endian machine, it makes a lot of sense why atomic_read didn't work,
> but did on x86_64.
>
Ok, so that was indeed the problem. One should not ignore warnings....

I will fix that.

Thanks for chasing this one down!

> Regards,
>
> - Corey
>
> Corey Ashford
> Software Engineer
> IBM Linux Technology Center, Linux Toolchain
> Beaverton, OR
> 503-578-3507
> cjash...@us.ibm.com
>
>
> "stephane eranian" <eran...@googlemail.com> wrote on 01/07/2009 04:02:10
> PM:
>
>> On Thu, Jan 8, 2009 at 12:56 AM, Corey J Ashford <cjash...@us.ibm.com>
> wrote:
>> > It's a 64-bit kernel  App is 64-bits also, but I don't think that
> matters.
>> >
>> Could you verify that sizeof(atomic_t) = sizeof(atomic_long_t) on your
> system?
>>
>>
>>
>> > "stephane eranian" <eran...@googlemail.com> wrote on 01/07/2009
> 03:54:51
>> > PM:
>> >
>> >> Corey,
>> >>
>> >> On Thu, Jan 8, 2009 at 12:49 AM, Corey J Ashford
> <cjash...@us.ibm.com>
>> > wrote:
>> >> >
>> >> > Yes, I didn't notice it before, but I am getting that warning.
>> >> >
>> >> > Before I received your email, I added some instrumentation to the
>> > callback
>> >> > pfm_buf_map_close() which is the function that sets
>> > ctx->flags.mmap_nlock to
>> >> > 1, and I see that file->f_count == 0.   This would cause that
> flagnot
>> > to be
>> >> > set, and then end up in the recursive lock inside of down_write().
>> >> >
>> >> I need to check on x86, but most likely I get f_count=1.
>> >> The explanation about mmap_nlock can be found in
>> >> perfmon_res.c. This is fairly complicated unfortunately.
>> >>
>> >> Are you compiling 64b-bit or 32-bit bit?
>> >
>> >
>
>

------------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It is the best place to buy or sell services for
just about anything Open Source.
http://p.sf.net/sfu/Xq1LFB
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to