Messages in this thread | | | Date | Thu, 18 Nov 2021 14:19:31 -0800 | Subject | Re: [RFC PATCH 00/13] x86 User Interrupts support | From | Sohil Mehta <> |
| |
On 10/1/2021 1:19 AM, Pavel Machek wrote: > Hi! >
Thank you for reviewing the patches!
>> Instructions >> ------------ >> senduipi <index> - send a user IPI to a target task based on the UITT index. >> >> clui - Mask user interrupts by clearing UIF (User Interrupt Flag). >> >> stui - Unmask user interrupts by setting UIF. >> >> testui - Test current value of UIF. >> >> uiret - return from a user interrupt handler. > > Are other CPU vendors allowed to implement compatible instructions? > > If not, we should probably have VDSO entries so kernel can abstract > differences between CPUs. >
Yes, we are evaluating VDSO support for this.
>> Untrusted processes >> ------------------- >> The current implementation expects only trusted and cooperating processes to >> communicate using user interrupts. Coordination is expected between processes >> for a connection teardown. In situations where coordination doesn't happen >> (say, due to abrupt process exit), the kernel would end up keeping shared >> resources (like UPID) allocated to avoid faults. > > Keeping resources allocated after process exit is a no-no. >
I meant the resource is still tracked via the shared file descriptor, so it will eventually get freed when the FD release happens. I am planning to include better documentation on lifetime rules of these shared resources next time.
Thanks, Sohil
| |