driver core: bus: use list_for_each_entry*

Use list_for_each_entry*() instead of list_for_each*() to simplify
the code.

Signed-off-by: Geliang Tang <geliangtang@163.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Geliang Tang 2016-01-05 23:03:37 +08:00 committed by Greg Kroah-Hartman
parent 94e1dec7a9
commit 4c62785e67
1 changed files with 3 additions and 7 deletions

View File

@ -1019,13 +1019,11 @@ static void device_insertion_sort_klist(struct device *a, struct list_head *list
int (*compare)(const struct device *a, int (*compare)(const struct device *a,
const struct device *b)) const struct device *b))
{ {
struct list_head *pos;
struct klist_node *n; struct klist_node *n;
struct device_private *dev_prv; struct device_private *dev_prv;
struct device *b; struct device *b;
list_for_each(pos, list) { list_for_each_entry(n, list, n_node) {
n = container_of(pos, struct klist_node, n_node);
dev_prv = to_device_private_bus(n); dev_prv = to_device_private_bus(n);
b = dev_prv->device; b = dev_prv->device;
if (compare(a, b) <= 0) { if (compare(a, b) <= 0) {
@ -1042,8 +1040,7 @@ void bus_sort_breadthfirst(struct bus_type *bus,
const struct device *b)) const struct device *b))
{ {
LIST_HEAD(sorted_devices); LIST_HEAD(sorted_devices);
struct list_head *pos, *tmp; struct klist_node *n, *tmp;
struct klist_node *n;
struct device_private *dev_prv; struct device_private *dev_prv;
struct device *dev; struct device *dev;
struct klist *device_klist; struct klist *device_klist;
@ -1051,8 +1048,7 @@ void bus_sort_breadthfirst(struct bus_type *bus,
device_klist = bus_get_device_klist(bus); device_klist = bus_get_device_klist(bus);
spin_lock(&device_klist->k_lock); spin_lock(&device_klist->k_lock);
list_for_each_safe(pos, tmp, &device_klist->k_list) { list_for_each_entry_safe(n, tmp, &device_klist->k_list, n_node) {
n = container_of(pos, struct klist_node, n_node);
dev_prv = to_device_private_bus(n); dev_prv = to_device_private_bus(n);
dev = dev_prv->device; dev = dev_prv->device;
device_insertion_sort_klist(dev, &sorted_devices, compare); device_insertion_sort_klist(dev, &sorted_devices, compare);