Messages in this thread | | | From | Linus Torvalds <> | Date | Tue, 29 Jun 2021 09:34:17 -0700 | Subject | Re: [GIT PULL] ucounts: Count rlimits in each user namespace |
| |
On Tue, Jun 29, 2021 at 8:52 AM Eric W. Biederman <ebiederm@xmission.com> wrote: > > Linus Torvalds <torvalds@linux-foundation.org> writes: > > > Why the "sigpending < LONG_MAX" test in that > > > > if (override_rlimit || (sigpending < LONG_MAX && sigpending <= > > task_rlimit(t, RLIMIT_SIGPENDING))) { > > thing? > > On second look that sigpending < LONG_MAX check is necessary. When > inc_rlimit_ucounts detects a problem it returns LONG_MAX.
I saw that, but _without_ that test you'd be left with just that
sigpending <= task_rlimit(t, RLIMIT_SIGPENDING)
and if task_rlimit() is LONG_MAX, then that means "no limits", so it is all ok.
IOW, afaik even _if_ sigpending ends up being LONG_MAX, the conditional does the right thing without that "sigpending < LONG_MAX" test.
Linus
| |