On Sat, Nov 27, 2021 at 01:45:20AM +0100, Thomas Gleixner wrote: > On Fri, Nov 26 2021 at 22:59, Peter Zijlstra wrote: > > On Fri, Nov 26, 2021 at 10:08:14PM +0100, Thomas Gleixner wrote: > >> > + if (timo) > >> > + hrtimer_sleeper_start_expires(&timeout, HRTIMER_MODE_ABS); > >> > + > >> > + freezable_schedule(); > >> > >> You can replace the whole hrtimer foo with > >> > >> if (!schedule_hrtimeout_range_clock(timo ? &timo : NULL, > >> tsk->timer_slack_ns, > >> HRTIMER_MODE_ABS, > >> tsk->umcg_clock)) { > >> ret = -ETIMEOUT; > >> break; > >> } > > > > That seems to loose the freezable crud.. then again, since we're > > interruptible, that shouldn't matter. Lemme go do that. > > We could add a freezable wrapper for that if necessary. I should just finish rewriting that freezer crap and then we can delete it all :-) But I don't think that's needed in this case, as long as we're interruptible we'll pass through the signal path which has a try_to_freezer() in it.