I can't find any specific info about what really hapens to a standard CPU (ie.: x86) when some Kernel code (Ring 0) makes a 'call' to a User code (Ring 3) routine.
1) When executing that routine the CPU Mode status gets changed to User mode?
2) After executing the final 'ret' instruction at the User level routine, an Exception is raised because of trying to return to a Kernel space code?