Yeah, a common stupid requirement. Perhaps a selling point for any solution would be to deploy a common serialization/de-serialization package that can be used on both the cloud and end point side.
Don't you think the TL;DR is never add your own syscalls when implementing your own character device driver is almost always the better option if you want something to run in the kernel?