One off the cause is because vmap function is not paired to relative fuctions with vunmap function wich result memory leaks. Offcourse is and another cause. Follow example on map_irq_stack function have vmap but not have guard when this function fail, at the end of fuction address is on
per_cpu(pcpu_hot.hardirq_stack_ptr, cpu) and result if you wish you can use vunmap(per_cpu(pcpu_hot.hardirq_stack_ptr, cpu));