I just thought doing so may provide better compatibility to theIt's the kernel internal API, so there's no strict requirement for this.+};I'm not sure how stable above ops are.
We will export a version value for userspace for compatibility.
Does it make sense if definingMy understanding is that it introduce another indirection, you still
just two callbacks here, e.g. vq_ctrl and device_ctrl, and then let the
vendor driver to handle specific ops in each category (similar to how
ioctl works)?
need to differ from different command, and it's less flexible than
direct callback.
What's the value of doing this?
parent driver. Even when new op is introduced, a parent driver
that was developed against the old set can still be loaded in the
new kernel. It just returns error when unrecognized ops are
routed through vq_ctrl and device_ctrl, if the userspace doesn't
favor the exposed version value. But if above ops set is pretty
stable, then this comment can be ignored.
Thanks
Kevin