Create your device with the D3D11_CREATE_DEVICE_DEBUG flag and it will tell you why it's failing. If i recall correctly you can't use a structured buffer as an indirect args buffer, you have to make it a raw buffer instead (ByteAddressBuffer).
Thank you so much. you are right, structured buffer cannot be used as an indirect args buffer.
didn't know I can create device with the debug flag, it's very helpful.