Problem with canMapHostMemory, CUDA SDK 2.2 Erroneous reporting of canMapHostMemory in CUDA SDK 2.2

I am using SDK2.2 and my card is: GeForce 9800 GT.
The problem I see is the following:

I am using mapped memory and I have firstly checked if my card is capable of it. The result is negative ( the canMapHostMemory returns 0). I have also run the simplezerocopy program and the result is the same (negative).
However, in my code I ignored the canMapHostMemory report and proceeded as if the card was capable of memory mapping. The result is that the memory mapping works (no errors returned) and the cudaHostGetDevicePointer returns a valid device pointer. Also as a double check the final result of my program is also correct (as if I was using memcopy).
So my query is: does the CUDA reporting program have a bug and can’t interrogate the card canMapHostMemory capability? or the memory mapping does not actually work? Although the later case would be very strange because no errors are seen and the program results have been checked for correctness.

with regards,