Messages in this thread |  | | | Subject | Re: [PATCH 4/6] BC: user interface (syscalls) | | From | Chandra Seetharaman <> | | Date | Wed, 23 Aug 2006 17:30:56 -0700 |
| |
On Wed, 2006-08-23 at 15:06 +0400, Kirill Korotaev wrote: <snip>
> +asmlinkage long sys_set_bclimit(uid_t id, unsigned long resource, > + unsigned long *limits) > +{ > + int error; > + unsigned long flags; > + struct beancounter *bc; > + unsigned long new_limits[2]; > + > + error = -EPERM; > + if(!capable(CAP_SYS_RESOURCE)) > + goto out; > + > + error = -EINVAL; > + if (resource >= BC_RESOURCES) > + goto out; > + > + error = -EFAULT; > + if (copy_from_user(&new_limits, limits, sizeof(new_limits))) > + goto out; > + > + error = -EINVAL; > + if (new_limits[0] > BC_MAXVALUE || new_limits[1] > BC_MAXVALUE) > + goto out; > + > + error = -ENOENT; > + bc = beancounter_findcreate(id, 0); > + if (bc == NULL) > + goto out; > + > + spin_lock_irqsave(&bc->bc_lock, flags); > + bc->bc_parms[resource].barrier = new_limits[0]; > + bc->bc_parms[resource].limit = new_limits[1];
No check for barrier <= limit > + spin_unlock_irqrestore(&bc->bc_lock, flags); > + > + put_beancounter(bc); > + error = 0; > +out: > + return error; > +} <snip> --
---------------------------------------------------------------------- Chandra Seetharaman | Be careful what you choose.... - sekharan@us.ibm.com | .......you may get it. ----------------------------------------------------------------------
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |