Execution of those two process will be as follows
Lets say both process start executing at the same time since there is no murex or such lock present ,
1- process P0 is blocking itself in its line 1 so it is waiting for wake up call which is a part of P1
2-P1 has no blocking call before printing so it will print P1
3-P1 will wakeup P0
4-P1 will block itself
5-now P0 will get printed because P0 will start from the last instruction.
6-now P0 will wakeup P1 and again steps 1 to 6 will get repeated
so we can say that there is no deadlock but these function print P1P0 repeatedly.