linear texture of single-component int texture

Hi, I face violation in code below, could you please help me? thanks!

texture< int, 1, cudaReadModeElementType> t;

t.addressMode[0] = cudaAddressModeClamp;

t_BuckBnds.filterMode = cudaFilterModePoint;

t_BuckBnds.normalized = 0;

cudaChannelFormatDesc desc = cudaCreateChannelDesc(32, 0, 0, 0, cudaChannelFormatKindUnsigned);

int* h = (int*) malloc(63000);

h...=...//assign

cudaBindTexture("t", h, &desc, 63000, 0);

add something like this after the assign line:

int *deviceData = 0;

cudaMalloc(&deviceData, 63000);

cudaMemcpy(deviceData, h, 63000, cudaMemcpyHostToDevice);

then change the bind to:

cudaBindTexture(t, deviceData);

It works! Thank you a lot!