glReadPixels problem with ATI mobility 9000

I have a very strange problem with a program using glReadPixels/ glDrawPixels. I’m using a Pixel Buffer for offscreen rendering of images. My program renders to the pbuffer, reads the pixels back and outputs them in the screen. The program works fine with my desktop box equiped with an NVIDIA GeForce 5700 LE. I’ve tried to run the program in a laptop equiped with ATI Radeon Mobility 9000 and glReadPixels returns scrambled buffers when I read GL_LUMINANCE and the buffer has a size that is not a power of 2. Examples:

PBuffer size: 128x128
GL_LUMINANCE -> Works
GL_DEPTH_COMPONENT-> Works

PBuffer size: 96x96
GL_LUMINANCE -> FAILS!
GL_DEPTH_COMPONENT-> Works!!! :confused:

Does anyone experienced the same problem?