Messages in this thread | | | Date | Thu, 11 May 2023 10:49:37 +0300 | From | Cyrill Gorcunov <> | Subject | Re: [RFD] posix-timers: CRIU woes |
| |
On Wed, May 10, 2023 at 01:16:26AM -0700, Andrey Vagin wrote: ... > Hi Thomas, > > If you give us a new API to create timers with specified id-s, we will > figure out how to live with it. It isn't good to ask users to update > CRIU to work on new kernels, but here are reasons and event improvements > for CRIU, so I think it's worth it. > > As for API, we can use one bit of sigevent.sigev_notify to request a > timer with a specified id.
Which will do the trick but would look somehow strange I think, since signals are not some how related to timer's ID. Another option might be to use output `created_timer_id` parameter as an input cookie.
Say we describe input as
struct { u32 magic; timer_t timer_id; };
Then if magic doesn't match we use `created_timer_id` for output only, and otherwise we read `timer_id` from input and use it. Of course there is a chance that some unitialized memory passed with existing old programs but i think false positive gonna be very-very low if ever. Just IMHO.
Cyrill
| |