[process] Handle pending_signal in kthread_join()
[process] Handle pending_signal in kthread_join()

When a signal is sent to a user process in kthread_join(), previously
we ended up hitting an ASSERT in the path under prepare_to_wait_on()
because the current task already had its wait obj set by the same function,
in previous iteration of the loop. The correct behavior in this case is to
break the loop instead.

vvaltchev/experimentOs,vvaltchev/experimentOs,vvaltchev/experimentOs,vvaltchev/experimentOs