recreating events failsat some moment -6 error (out of host memory)

I use this fragment to see how long kernel runs in total:

		if(fft_event){
			cl_ulong start,end;
			err=clWaitForEvents(1,&fft_event);
			err|=clGetEventProfilingInfo (fft_event,CL_PROFILING_COMMAND_START,sizeof(cl_ulong),&start,NULL);
			err|=clGetEventProfilingInfo (fft_event,CL_PROFILING_COMMAND_END,sizeof(cl_ulong),&end,NULL);
			Counters<T_oclFFT1_ns,cl_ulong>::update(end-start);
			err|=clReleaseEvent(fft_event);fft_event=NULL;
			if(err != CL_SUCCESS)fprintf(stderr,"ERROR: oclFFT_1 event.\n");
		}


err |= clEnqueueNDRangeKernel(queue, kernelInfo->kernel, 1, NULL, &gWorkItems, &lWorkItems, 0, NULL,NULL/&fft_event/);
if(err){
fprintf(stderr,“Error in oclFFT_1: %d\n”,err);
return err;
}else{fprintf(stderr,“oclFFT_1 kernel passed\n”);}

If fft_event not commented out this kernel runs many times but eventually fails with -6 error code.
I checked via TaskManager - there is no noticeable memory leak and surely plenty of host memory available at time when kernel fails.

If event kreatin at kernel call commented out (as currently) all works fine.

What is wrong with my usage of events?