On Sun, 2025-07-27 at 14:29 +0800, Tiwei Bie wrote: > > +static void IPI_handler(int cpu, struct uml_pt_regs *regs) > +{ > + struct pt_regs *old_regs = set_irq_regs((struct pt_regs *)regs); > + unsigned char c; > + int fd; > + > + irq_enter(); > + > + if (current->mm) > + os_alarm_process(current->mm->context.id.pid); > + > + fd = uml_cpu_data[cpu].ipi_pipe[0]; > + while (os_read_file(fd, &c, 1) == 1) {
We were discussing the IPI stuff and started thinking maybe an RT signal with sigqueue() passing the value to the si_value in SA_SIGINFO data would be possible and have less overhead? That way there's nothing on the SIGIO path, and you don't need a read() for the type of IPI? johannes