Messages in this thread | | | Date | Mon, 19 Aug 2019 22:29:13 +0200 (CEST) | From | Thomas Gleixner <> | Subject | Re: [patch 38/44] posix-cpu-timers: Respect INFINITY for hard RTTIME limit |
| |
On Mon, 19 Aug 2019, Ingo Molnar wrote: > * Thomas Gleixner <tglx@linutronix.de> wrote: > > > The RTIME limit expiry code does not check the hard RTTIME limit for > > INFINITY, i.e. being disabled. Add it. > > > > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> > > --- > > kernel/time/posix-cpu-timers.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > --- a/kernel/time/posix-cpu-timers.c > > +++ b/kernel/time/posix-cpu-timers.c > > @@ -905,7 +905,7 @@ static void check_process_timers(struct > > u64 softns, ptime = samples[CPUCLOCK_PROF]; > > unsigned long psecs = div_u64(ptime, NSEC_PER_SEC); > > > > - if (psecs >= hard) { > > + if (hard != RLIM_INFINITY && psecs >= hard) { > > /* > > * At the hard limit, we just die. > > * No need to calculate anything else now. > > Might make sense to mark this as a possible ABI change in the changelog: > if some weird code learned to rely on this (arguably broken) behavior > then the bug turned into an ABI.
Will do, though that would be really interesting to see the offending case. That limit is in seconds and RLIM_INFINITY is at least INT_MAX which means 68 years. :)
I stumbled over it when I tried to consolidate that duplicated code in that area. I'll amend the changelog to be more clear.
Thanks,
tglx
| |