problem with zerocopy

hi all,
I now have a problem with zero copy.
everytime I lauch the app, runtime hints me that " unspecified launch failure in prior launch."
and I checked that line, it was: cutilSafeCall(cudaHostGetDevicePointer((void **)&d_a, (void *)a, 0));
this error occurred before any kernel was launched.
i called
cutilSafeCall(cudaHostAlloc((void **)&a, a_size * sizeof(unsigned), cudaHostAllocMap));
cudaDeviceProp deviceProp;
cutilSafeCall(cudaGetDeviceProperties(&deviceProp, 0));
if (!deviceProp.canMapHostMemory)
fprintf(stderr, “zero copy not supported\n”);
before I want to get the mapped device pointer. I think this should just be the routine to use zero copy feature.
is there any one ever encountered this problem; and what might be the crux?
thanks in advance.

Does the “simpleZeroCopy” SDK sample work on your machine?