OSDN Git Service

usb: gadget: rndis: use list_for_each_entry_safe
authorGeliang Tang <geliangtang@163.com>
Fri, 18 Dec 2015 16:34:33 +0000 (00:34 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 25 Jan 2016 04:55:33 +0000 (20:55 -0800)
Use list_for_each_entry_safe() instead of list_for_each_safe() to
simplify the code.

Signed-off-by: Geliang Tang <geliangtang@163.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/gadget/function/rndis.c

index 70d3917..34a76db 100644 (file)
@@ -914,7 +914,7 @@ struct rndis_params *rndis_register(void (*resp_avail)(void *v), void *v)
        params->media_state = RNDIS_MEDIA_STATE_DISCONNECTED;
        params->resp_avail = resp_avail;
        params->v = v;
-       INIT_LIST_HEAD(&(params->resp_queue));
+       INIT_LIST_HEAD(&params->resp_queue);
        pr_debug("%s: configNr = %d\n", __func__, i);
 
        return params;
@@ -1006,12 +1006,9 @@ EXPORT_SYMBOL_GPL(rndis_add_hdr);
 
 void rndis_free_response(struct rndis_params *params, u8 *buf)
 {
-       rndis_resp_t *r;
-       struct list_head *act, *tmp;
+       rndis_resp_t *r, *n;
 
-       list_for_each_safe(act, tmp, &(params->resp_queue))
-       {
-               r = list_entry(act, rndis_resp_t, list);
+       list_for_each_entry_safe(r, n, &params->resp_queue, list) {
                if (r && r->buf == buf) {
                        list_del(&r->list);
                        kfree(r);
@@ -1022,14 +1019,11 @@ EXPORT_SYMBOL_GPL(rndis_free_response);
 
 u8 *rndis_get_next_response(struct rndis_params *params, u32 *length)
 {
-       rndis_resp_t *r;
-       struct list_head *act, *tmp;
+       rndis_resp_t *r, *n;
 
        if (!length) return NULL;
 
-       list_for_each_safe(act, tmp, &(params->resp_queue))
-       {
-               r = list_entry(act, rndis_resp_t, list);
+       list_for_each_entry_safe(r, n, &params->resp_queue, list) {
                if (!r->send) {
                        r->send = 1;
                        *length = r->length;
@@ -1053,7 +1047,7 @@ static rndis_resp_t *rndis_add_response(struct rndis_params *params, u32 length)
        r->length = length;
        r->send = 0;
 
-       list_add_tail(&r->list, &(params->resp_queue));
+       list_add_tail(&r->list, &params->resp_queue);
        return r;
 }