mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
MFC r198201:
Remove spurious call to priv_check(PRIV_VM_SWAP_NOQUOTA). Call priv_check(PRIV_VM_SWAP_NORLIMIT) only when per-uid limit is actually exceed. Approved by: re (kensmith)
This commit is contained in:
parent
cbdd92bda4
commit
46aaa1ed67
1 changed files with 4 additions and 6 deletions
|
|
@ -176,7 +176,7 @@ swap_reserve(vm_ooffset_t incr)
|
|||
int
|
||||
swap_reserve_by_uid(vm_ooffset_t incr, struct uidinfo *uip)
|
||||
{
|
||||
vm_ooffset_t r, s, max;
|
||||
vm_ooffset_t r, s;
|
||||
int res, error;
|
||||
static int curfail;
|
||||
static struct timeval lastfail;
|
||||
|
|
@ -185,7 +185,6 @@ swap_reserve_by_uid(vm_ooffset_t incr, struct uidinfo *uip)
|
|||
panic("swap_reserve: & PAGE_MASK");
|
||||
|
||||
res = 0;
|
||||
error = priv_check(curthread, PRIV_VM_SWAP_NOQUOTA);
|
||||
mtx_lock(&sw_dev_mtx);
|
||||
r = swap_reserved + incr;
|
||||
if (overcommit & SWAP_RESERVE_ALLOW_NONWIRED) {
|
||||
|
|
@ -204,10 +203,9 @@ swap_reserve_by_uid(vm_ooffset_t incr, struct uidinfo *uip)
|
|||
if (res) {
|
||||
PROC_LOCK(curproc);
|
||||
UIDINFO_VMSIZE_LOCK(uip);
|
||||
error = priv_check(curthread, PRIV_VM_SWAP_NORLIMIT);
|
||||
max = (error != 0) ? lim_cur(curproc, RLIMIT_SWAP) : 0;
|
||||
if (max != 0 && uip->ui_vmsize + incr > max &&
|
||||
(overcommit & SWAP_RESERVE_RLIMIT_ON) != 0)
|
||||
if ((overcommit & SWAP_RESERVE_RLIMIT_ON) != 0 &&
|
||||
uip->ui_vmsize + incr > lim_cur(curproc, RLIMIT_SWAP) &&
|
||||
priv_check(curthread, PRIV_VM_SWAP_NORLIMIT))
|
||||
res = 0;
|
||||
else
|
||||
uip->ui_vmsize += incr;
|
||||
|
|
|
|||
Loading…
Reference in a new issue