[PATCH 2/5] device_cgroup: prepare exception list handling functions for two lists

From: Aristeu Rozanski
Date: Tue Nov 27 2012 - 14:35:20 EST


In the following patches, device_cgroup structure will have two sets of
behavior and exceptions list (actual one, another with the local settings)
so rework the functions to use exception list, not a device_cgroup.

Cc: Tejun Heo <tj@xxxxxxxxxx>
Cc: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>
Signed-off-by: Aristeu Rozanski <aris@xxxxxxxxxx>

---
security/device_cgroup.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)

Index: github/security/device_cgroup.c
===================================================================
--- github.orig/security/device_cgroup.c 2012-11-26 17:13:55.972206330 -0500
+++ github/security/device_cgroup.c 2012-11-27 11:58:28.025841706 -0500
@@ -104,7 +104,7 @@
/*
* called under devcgroup_mutex
*/
-static int dev_exception_add(struct dev_cgroup *dev_cgroup,
+static int dev_exception_add(struct list_head *exceptions,
struct dev_exception_item *ex)
{
struct dev_exception_item *excopy, *walk;
@@ -115,7 +115,7 @@
if (!excopy)
return -ENOMEM;

- list_for_each_entry(walk, &dev_cgroup->exceptions, list) {
+ list_for_each_entry(walk, exceptions, list) {
if (walk->type != ex->type)
continue;
if (walk->major != ex->major)
@@ -129,21 +129,21 @@
}

if (excopy != NULL)
- list_add_tail_rcu(&excopy->list, &dev_cgroup->exceptions);
+ list_add_tail_rcu(&excopy->list, exceptions);
return 0;
}

/*
* called under devcgroup_mutex
*/
-static void dev_exception_rm(struct dev_cgroup *dev_cgroup,
+static void dev_exception_rm(struct list_head *exceptions,
struct dev_exception_item *ex)
{
struct dev_exception_item *walk, *tmp;

lockdep_assert_held(&devcgroup_mutex);

- list_for_each_entry_safe(walk, tmp, &dev_cgroup->exceptions, list) {
+ list_for_each_entry_safe(walk, tmp, exceptions, list) {
if (walk->type != ex->type)
continue;
if (walk->major != ex->major)
@@ -513,10 +513,10 @@
* don't want to break compatibility
*/
if (devcgroup->behavior == DEVCG_DEFAULT_ALLOW) {
- dev_exception_rm(devcgroup, &ex);
+ dev_exception_rm(&devcgroup->exceptions, &ex);
return 0;
}
- return dev_exception_add(devcgroup, &ex);
+ return dev_exception_add(&devcgroup->exceptions, &ex);
case DEVCG_DENY:
/*
* If the default policy is to deny by default, try to remove
@@ -524,10 +524,10 @@
* don't want to break compatibility
*/
if (devcgroup->behavior == DEVCG_DEFAULT_DENY) {
- dev_exception_rm(devcgroup, &ex);
+ dev_exception_rm(&devcgroup->exceptions, &ex);
return 0;
}
- return dev_exception_add(devcgroup, &ex);
+ return dev_exception_add(&devcgroup->exceptions, &ex);
default:
return -EINVAL;
}

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/