Page MenuHomeFreeBSD

Introduce setrlimit_uid(2)
Needs ReviewPublic

Authored by bnovkov on Feb 1 2026, 5:22 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Jul 7, 10:33 PM
Unknown Object (File)
Tue, Jul 7, 3:09 AM
Unknown Object (File)
Mon, Jul 6, 11:48 PM
Unknown Object (File)
Mon, Jul 6, 1:01 AM
Unknown Object (File)
Sat, Jul 4, 3:10 AM
Unknown Object (File)
Fri, Jul 3, 8:36 AM
Unknown Object (File)
Wed, Jul 1, 11:34 AM
Unknown Object (File)
Tue, Jun 30, 9:02 PM
Subscribers

Details

Reviewers
markj
olce
brooks
Summary

This change introduces setrlimit_uid(2), a new system call for changing
per-UID resource limits.

Unlike the setrlimit(2) system call, setrlimit_uid(2) operates on the
plimit structure stored in struct uidinfo.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 70322
Build 67205: arc lint + arc unit

Event Timeline

This makes me wonder why not setrlimit_type(id_t id, int /*idtype_t*/ type, int which, const struct rlimit *rlp), but it's not clear most types really want limits so it feels overall like premature generalization.

sys/kern/syscalls.master
3428
sys/sys/resource.h
200

I feel like I'd put the uid_t at the front of the list so it's "subject", "action", but don't have a strong justification.

Rebase and address @brooks 's comment.