The problem here is that kernel memory is, by design, inaccessible to user-land processes. Whereas it is possible for the kernel to transfer data to-and-from userland memory relatively easily.
What I would do is to create some easy-to-use rendezvous mechanism ... perhaps a virtual-device ... cabbage ideas freely (say...) from the /proc pseudo-filesystem. Something that a user-land process can very easily call and work with, such that when it does so, you're comfortably in kernel-mode and can move the data to/from where it needs to go.
Actum Ne Agas: Do Not Do A Thing Already Done. Find the closest existing well-known kernel facility that's reasonably close to what you require, and unabashedly "cabbage" it.