https://bugs.freedesktop.org/show_bug.cgi?id=102179
Janpieter Sollie janpieter.sollie@dommel.be changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |major
--- Comment #3 from Janpieter Sollie janpieter.sollie@dommel.be --- interesting note: the following code allows me to execute the clEnqueueReadBuffer: //set kernel arguments, limited to 1 clSetKernelArg ( devdb[nr_of_devices].kernel, 0, sizeof(devdb[nr_of_devices].output), &devdb[nr_of_devices].output);
//run kernel clEnqueueNDRangeKernel(..) //read buffer clEnqueueReadBuffer (((device*)device_obj)->command_queue, ((device*)device_obj)->output, CL_FALSE, 0, 16, ((device*)device_obj)->host_output, 0, NULL, NULL);
while it does not work with any 2nd, 3rd, ... kernel parameter, eg: clSetKernelArg ( devdb[nr_of_devices].kernel, 0, sizeof(devdb[nr_of_devices].output), &devdb[nr_of_devices].output); clSetKernelArg ( devdb[nr_of_devices].kernel, 1, sizeof(devdb[nr_of_devices].output2), &devdb[nr_of_devices].output2);
hangs at reading output. but no warning of VM_PAGE_FAULTS, these occur when output is the last argument
because I think this is a blocker for most OpenCL users to get their data back, I'm increasing it to major (also, this cannot be analyzed easily: every time the call hangs, I have to reboot my pc, as the process becomes a zombie)