Apologies for the mistake in this question.
The question mentions that while P1 is executing, the data from the disk arrives and the interrupt gets serviced by process P1.
I think question is wrongly formulated as it should be:
1. P1 is executing
2. Disk interrupt occurs.
3. Interrupt is serviced by the ISR after the completion of currently running instruction cycle by the CPU.
After every instruction cycle the processor will check for interrupts to be processed if there is no interrupt is present in the system it will go for the next instruction cycle which is given by the instruction register.
If there is an interrupt present then it will trigger the interrupt handler(ISR), the handler will stop the present instruction which is processing and save its configuration in a register and load the program counter of the interrupt from a location which is given by the interrupt vector table. After processing the interrupt by the processor interrupt handler will load the instruction and its configuration from the saved register, process will start its processing where it’s left. This saving the old instruction processing configuration and loading the new interrupt configuration is also called as context switching.
Thus process P1 doesn't service the interrupt as mentioned by the question.