GPL exported symbols are the ones that are thought to be so tightly coupled to the kernel implementation that if you are using them, you are writing a derivative work of the kernel.
I can, considering that you can do that from user space using strace. Or ebpf which is probably the actual right way to do this kind of thing.