On Sun, Apr 29, 2012 at 10:18 AM, David Miller <davem@xxxxxxxxxxxxx> wrote: > From: Ming Lei <tom.leiming@xxxxxxxxx> > Date: Fri, 27 Apr 2012 18:21:35 +0800 > >> +/*The caller must hold list->lock*/ > > Please put spaces in your comments, like this: > > /* The caller must hold list->lock */ > >> + >> + /*speedup unlink by blocking resubmit*/ > > Same here. OK, will do it. >> >> - entry = (struct skb_data *) skb->cb; >> + skb_queue_walk(q, skb) { >> + entry = (struct skb_data *) skb->cb; >> + if (entry->state != unlink_start) >> + break; >> + } >> + if (skb == (struct sk_buff *)q) >> + break; > > Please do not expose the internal details of SKB lists > with a test like this. Eventually this will all be > converted to struct list_head and this kind of test > will cause unnecessary pain for such a conversion. > > Instead, code it like this, as you would for a loop > using list_for_each*() or similar: > > skb_queue_walk(q, skb) { > if (condition) > goto found; > } > /* No matching entry. */ > break; > found: Good suggestion, will do it. Thanks, -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html