[Cbe-oss-dev] CELL, 32 bit application bit in flags not set

Carl Love cel at us.ibm.com
Thu May 1 09:16:26 EST 2008


I am investigating an issue with the oprofile backtrace function on CELL
(arch/powerpc/oprofile/backtrace.c).  The code has the test  

 if (!test_thread_flag(TIF_32BIT))

to determine if the current user application is 32 bit or 64 bit.  The
call checks the flags value for the current process to see if the 32bit
application bit is set (TIF_32BIT is bit 4 of flags).  The
test_thread_flag(TIF_32BIT) returns 0 for both 32 bit and 64 bit user
applications.  I printed the value of current->flags and current->comm
before the test.  For the 32 bit and the 64 bit (compiled with gcc -m64
option) versions of my test program, the flags value is the same
0x4000000, hence the test always says the user application is 64 bits.

This works correctly on Power 5.  Is Cell doing something different to
track if the user PPU application is 32 or 64 bits?

Thanks.

         Carl Love






More information about the cbe-oss-dev mailing list