yes there is limit look at
CL_DEVICE_MAX_PARAMETER_SIZE from OpenCL specification.
Nou, You are a great friend..... Thanks!
So, here is a bit more info from the spec..
You can get this from "clGetDeviceInfo" call....
CL_DEVICE_MAX_PARAMETER_SIZE - Max size in bytes of the arguments that can be passed to a kernel.
The minimum value is 1024. For this minimum value, only a maximum of 128 arguments can be passed to a kernel.
But all these said, the program should not segmentation fault.
Can you provide us the code that was seg-faulting? (assuming there are no bugs from your side :-) )