diff options
author | Bhaktipriya Shridhar <bhaktipriya96@gmail.com> | 2016-03-12 01:35:29 +0530 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-03-11 22:09:09 -0800 |
commit | c997866cd27495ae28bc07596457e2bd83fb3275 (patch) | |
tree | a51c0fb47dae3bf9876b7ff4c58c4fbb27218d7e | |
parent | 3e47a1cfba5a8af7dc3c10a4705d8047abdc26c3 (diff) | |
download | lwn-c997866cd27495ae28bc07596457e2bd83fb3275.tar.gz lwn-c997866cd27495ae28bc07596457e2bd83fb3275.zip |
staging: lustre: lnet: api-ni: Use list_for_each_entry_safe
Doubly linked lists which are iterated using list_empty
and list_entry macros have been replaced with list_for_each_entry_safe
macro.
This makes the iteration simpler and more readable.
This patch replaces the while loop containing list_empty and list_entry
with list_for_each_entry_safe.
This was done with Coccinelle.
@@
expression E1;
identifier I1, I2;
type T;
iterator name list_for_each_entry_safe;
@@
T *I1;
+ T *tmp;
...
- while (list_empty(&E1) == 0)
+ list_for_each_entry_safe (I1, tmp, &E1, I2)
{
...when != T *I1;
- I1 = list_entry(E1.next, T, I2);
...
}
Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/staging/lustre/lnet/lnet/api-ni.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/staging/lustre/lnet/lnet/api-ni.c b/drivers/staging/lustre/lnet/lnet/api-ni.c index 6c7579e42b88..8764755544c9 100644 --- a/drivers/staging/lustre/lnet/lnet/api-ni.c +++ b/drivers/staging/lustre/lnet/lnet/api-ni.c @@ -1086,18 +1086,17 @@ lnet_clear_zombies_nis_locked(void) int i; int islo; lnet_ni_t *ni; + lnet_ni_t *temp; /* * Now wait for the NI's I just nuked to show up on ln_zombie_nis * and shut them down in guaranteed thread context */ i = 2; - while (!list_empty(&the_lnet.ln_nis_zombie)) { + list_for_each_entry_safe(ni, temp, &the_lnet.ln_nis_zombie, ni_list) { int *ref; int j; - ni = list_entry(the_lnet.ln_nis_zombie.next, - lnet_ni_t, ni_list); list_del_init(&ni->ni_list); cfs_percpt_for_each(ref, j, ni->ni_refs) { if (!*ref) @@ -1147,6 +1146,7 @@ static void lnet_shutdown_lndnis(void) { lnet_ni_t *ni; + lnet_ni_t *temp; int i; /* NB called holding the global mutex */ @@ -1160,9 +1160,7 @@ lnet_shutdown_lndnis(void) the_lnet.ln_shutdown = 1; /* flag shutdown */ /* Unlink NIs from the global table */ - while (!list_empty(&the_lnet.ln_nis)) { - ni = list_entry(the_lnet.ln_nis.next, - lnet_ni_t, ni_list); + list_for_each_entry_safe(ni, temp, &the_lnet.ln_nis, ni_list) { lnet_ni_unlink_locked(ni); } |