The problem is, AFAIK, pending signal is checked and its handler is
executed when a task is going to switch back to user space. And as you know, kernel thread never returns to user space.
if pending signals are being checked only when switching back to user
space, why it's allowed to use signals in kernel space (between kernel
objects) .. i've read once that in kernel space you can't use signals ,
correct me please
Thanks